Ejemplo n.º 1
0
        internal static async Task <Uri> SaveAuditRecord(CloudStorageAccount storage, AuditRecord auditRecord)
        {
            string localIP = await AuditActor.GetLocalIP();

            CloudAuditingService audit = new CloudAuditingService(
                Environment.MachineName,
                localIP,
                storage.CreateCloudBlobClient().GetContainerReference("auditing"),
                onBehalfOfThunk: null);

            return(await audit.SaveAuditRecord(auditRecord));
        }
        private static IAuditingService GetAuditingServiceForAzureStorage(ContainerBuilder builder, IGalleryConfigurationService configuration)
        {
            string instanceId;

            try
            {
                instanceId = RoleEnvironment.CurrentRoleInstance.Id;
            }
            catch
            {
                instanceId = Environment.MachineName;
            }

            var localIp = AuditActor.GetLocalIpAddressAsync().Result;

            var service = new CloudAuditingService(instanceId, localIp, configuration.Current.AzureStorage_Auditing_ConnectionString, AuditActor.GetAspNetOnBehalfOfAsync);

            builder.RegisterInstance(service)
            .As <ICloudStorageStatusDependency>()
            .SingleInstance();

            return(service);
        }