コード例 #1
0
ファイル: SetServiceMetrics.cs プロジェクト: EmmaZhu/pshtest
        internal void ExpectValidmetricsOperation(Constants.ServiceType serviceType,
                                                  string operations, GetMetricsProperty <ServiceProperties> getServiceProperties)
        {
            int retentionDays = Utility.GetRandomTestCount(1, 365 + 1);

            Test.Assert(CommandAgent.SetAzureStorageServiceMetrics(serviceType, Constants.MetricsType.Hour, operations, retentionDays.ToString(), string.Empty), "Set hour metrics level should succeed");
            ServiceProperties retrievedProperties = getServiceProperties(Constants.MetricsType.Hour, retentionDays, operations);
            MetricsLevel      expectOperation     = (MetricsLevel)Enum.Parse(typeof(MetricsLevel), operations, true);

            ExpectEqual(expectOperation.ToString(), retrievedProperties.HourMetrics.MetricsLevel.ToString(), "hour metrics level");

            Test.Assert(CommandAgent.SetAzureStorageServiceMetrics(serviceType, Constants.MetricsType.Minute, operations, retentionDays.ToString(), string.Empty), "Set minute metrics level should succeed");
            retrievedProperties = getServiceProperties(Constants.MetricsType.Minute, retentionDays, operations);
            expectOperation     = (MetricsLevel)Enum.Parse(typeof(MetricsLevel), operations, true);
            ExpectEqual(expectOperation.ToString(), retrievedProperties.MinuteMetrics.MetricsLevel.ToString(), "minute metrics level");
        }
コード例 #2
0
        /// <summary>
        /// Update the specified service properties according to the input in old XSCL
        /// </summary>
        /// <param name="serviceProperties">Service properties</param>
        internal void UpdateServiceProperties(XTable.MetricsProperties metrics)
        {
            if (Version != null)
            {
                metrics.Version = Version.ToString();
            }

            if (RetentionDays != null)
            {
                if (RetentionDays == -1)
                {
                    //Disable metrics retention policy
                    metrics.RetentionDays = null;
                }
                else if (RetentionDays < 1 || RetentionDays > 365)
                {
                    throw new ArgumentException(string.Format(Resources.InvalidRetentionDay, RetentionDays));
                }
                else
                {
                    metrics.RetentionDays = RetentionDays;
                }
            }

            if (MetricsLevel != null)
            {
                MetricsLevel metricsLevel = MetricsLevel.Value;
                metrics.MetricsLevel = (XTable.MetricsLevel)Enum.Parse(typeof(XTable.MetricsLevel), metricsLevel.ToString(), true);
                // Set default metrics version
                if (string.IsNullOrEmpty(metrics.Version))
                {
                    string defaultMetricsVersion = StorageNouns.DefaultMetricsVersion;
                    metrics.Version = defaultMetricsVersion;
                }
            }
        }