Ejemplo n.º 1
0
        public string NormalizeAndValidateMetadata(string metadataValue, string metadataField, string vendorName)
        {
            if (metadataValue == null)
            {
                return(null);
            }

            var normalizedValue = NormalizeString(metadataValue);

            if (normalizedValue.IsEmpty())
            {
                return(null);
            }

            if (!IsValidMetadata(normalizedValue))
            {
                Log.InfoFormat("Unable to validate {0} metadata for the {1} field.", vendorName, metadataField);

                switch (vendorName)
                {
                case AwsName:
                    _agentHealthReporter.ReportAwsUtilizationError();
                    break;

                case AzureName:
                    _agentHealthReporter.ReportAzureUtilizationError();
                    break;

                case GcpName:
                    _agentHealthReporter.ReportGcpUtilizationError();
                    break;

                case PcfName:
                    _agentHealthReporter.ReportPcfUtilizationError();
                    break;

                case DockerName:
                    _agentHealthReporter.ReportBootIdError();
                    break;

                case KubernetesName:
                    _agentHealthReporter.ReportKubernetesUtilizationError();
                    break;
                }

                return(null);
            }

            return(normalizedValue);
        }