Example #1
0
 internal BlobMetrics(string version, bool enabled, bool?includeApis, BlobRetentionPolicy retentionPolicy)
 {
     Version         = version;
     Enabled         = enabled;
     IncludeApis     = includeApis;
     RetentionPolicy = retentionPolicy;
 }
Example #2
0
        //-------------------------------------------------
        // Enable diagnostic logs
        //-------------------------------------------------

        public void EnableDiagnosticLogs()
        {
            var connectionString = Constants.connectionString;

            BlobServiceClient blobServiceClient = new BlobServiceClient(connectionString);

            BlobServiceProperties serviceProperties = blobServiceClient.GetProperties().Value;

            serviceProperties.Logging.Delete = true;

            BlobRetentionPolicy retentionPolicy = new BlobRetentionPolicy();

            retentionPolicy.Enabled = true;
            retentionPolicy.Days    = 2;
            serviceProperties.Logging.RetentionPolicy = retentionPolicy;

            blobServiceClient.SetProperties(serviceProperties);

            Console.WriteLine("Diagnostic logs are now enabled");
        }
Example #3
0
        //-------------------------------------------------
        // Update log retention period
        //-------------------------------------------------

        public void UpdateLogRetentionPeriod()
        {
            var connectionString = Constants.connectionString;

            // <Snippet_ViewRetentionPeriod>
            BlobServiceClient  blobServiceClient  = new BlobServiceClient(connectionString);
            QueueServiceClient queueServiceClient = new QueueServiceClient(connectionString);

            BlobServiceProperties  blobServiceProperties  = blobServiceClient.GetProperties().Value;
            QueueServiceProperties queueServiceProperties = queueServiceClient.GetProperties().Value;

            Console.WriteLine("Retention period for logs from the blob service is: " +
                              blobServiceProperties.Logging.RetentionPolicy.Days.ToString());

            Console.WriteLine("Retention period for logs from the queue service is: " +
                              queueServiceProperties.Logging.RetentionPolicy.Days.ToString());
            // </Snippet_ViewRetentionPeriod>

            // <Snippet_ModifyRetentionPeriod>
            BlobRetentionPolicy blobRetentionPolicy = new BlobRetentionPolicy();

            blobRetentionPolicy.Enabled = true;
            blobRetentionPolicy.Days    = 4;

            QueueRetentionPolicy queueRetentionPolicy = new QueueRetentionPolicy();

            queueRetentionPolicy.Enabled = true;
            queueRetentionPolicy.Days    = 4;

            blobServiceProperties.Logging.RetentionPolicy = blobRetentionPolicy;
            blobServiceProperties.Cors = null;

            queueServiceProperties.Logging.RetentionPolicy = queueRetentionPolicy;
            queueServiceProperties.Cors = null;

            blobServiceClient.SetProperties(blobServiceProperties);
            queueServiceClient.SetProperties(queueServiceProperties);

            Console.WriteLine("Retention policy for blobs and queues is updated");
            // </Snippet_ModifyRetentionPeriod>
        }
Example #4
0
        // </Snippet_GetAccountSASToken>

        //-------------------------------------------------
        // Use Account SAS Token
        //-------------------------------------------------

        // <Snippet_UseAccountSAS>

        private static void UseAccountSAS(Uri blobServiceUri, string sasToken)
        {
            var blobServiceClient = new BlobServiceClient
                                        (new Uri($"{blobServiceUri}?{sasToken}"), null);

            BlobRetentionPolicy retentionPolicy = new BlobRetentionPolicy();

            retentionPolicy.Enabled = true;
            retentionPolicy.Days    = 7;

            blobServiceClient.SetProperties(new BlobServiceProperties()
            {
                HourMetrics = new BlobMetrics()
                {
                    RetentionPolicy = retentionPolicy,
                    Version         = "1.0"
                },
                MinuteMetrics = new BlobMetrics()
                {
                    RetentionPolicy = retentionPolicy,
                    Version         = "1.0"
                },
                Logging = new BlobAnalyticsLogging()
                {
                    Write           = true,
                    Read            = true,
                    Delete          = true,
                    RetentionPolicy = retentionPolicy,
                    Version         = "1.0"
                }
            });

            // The permissions granted by the account SAS also permit you to retrieve service properties.

            BlobServiceProperties serviceProperties = blobServiceClient.GetProperties().Value;

            Console.WriteLine(serviceProperties.HourMetrics.RetentionPolicy);
            Console.WriteLine(serviceProperties.HourMetrics.Version);
        }