private static void SortDiagnostics(DiagnosticsType diagnostics) { if (diagnostics.CrashDumpSource != null) { if (diagnostics.CrashDumpSource.Destinations != null) { diagnostics.CrashDumpSource.Destinations.AzureBlob = SortAzureBlob(diagnostics.CrashDumpSource.Destinations.AzureBlob); diagnostics.CrashDumpSource.Destinations.FileStore = SortFileStore(diagnostics.CrashDumpSource.Destinations.FileStore); diagnostics.CrashDumpSource.Destinations.LocalStore = SortLocalStore(diagnostics.CrashDumpSource.Destinations.LocalStore); } diagnostics.CrashDumpSource.Parameters = SortParameters(diagnostics.CrashDumpSource.Parameters); } if (diagnostics.ETWSource != null) { if (diagnostics.ETWSource.Destinations != null) { diagnostics.ETWSource.Destinations.AzureBlob = SortAzureBlob(diagnostics.ETWSource.Destinations.AzureBlob); diagnostics.ETWSource.Destinations.FileStore = SortFileStore(diagnostics.ETWSource.Destinations.FileStore); diagnostics.ETWSource.Destinations.LocalStore = SortLocalStore(diagnostics.ETWSource.Destinations.LocalStore); } diagnostics.ETWSource.Parameters = SortParameters(diagnostics.ETWSource.Parameters); } if (diagnostics.FolderSource != null) { diagnostics.FolderSource = SortFolderSource(diagnostics.FolderSource); foreach (DiagnosticsTypeFolderSource folderSource in diagnostics.FolderSource) { if (folderSource.Destinations != null) { folderSource.Destinations.AzureBlob = SortAzureBlob(folderSource.Destinations.AzureBlob); folderSource.Destinations.FileStore = SortFileStore(folderSource.Destinations.FileStore); folderSource.Destinations.LocalStore = SortLocalStore(folderSource.Destinations.LocalStore); } folderSource.Parameters = SortParameters(folderSource.Parameters); } } }
private void ValidateApplicationManifestDiagnostics(DiagnosticsType diagnostics) { if (diagnostics == null) { return; } if (diagnostics.CrashDumpSource != null) { ValidateType <bool>( diagnostics.CrashDumpSource.IsEnabled, CrashDumpSource, null, IsEnabled); if (diagnostics.CrashDumpSource.Destinations != null) { ValidateAzureBlob(diagnostics.CrashDumpSource.Destinations.AzureBlob, CrashDumpSource); ValidateFileStore(diagnostics.CrashDumpSource.Destinations.FileStore, CrashDumpSource); ValidateLocalStore(diagnostics.CrashDumpSource.Destinations.LocalStore, CrashDumpSource); } } if (diagnostics.ETWSource != null) { ValidateType <bool>( diagnostics.ETWSource.IsEnabled, ETWSource, null, IsEnabled); if (diagnostics.ETWSource.Destinations != null) { ValidateAzureBlob(diagnostics.ETWSource.Destinations.AzureBlob, ETWSource); ValidateFileStore(diagnostics.ETWSource.Destinations.FileStore, ETWSource); ValidateLocalStore(diagnostics.ETWSource.Destinations.LocalStore, ETWSource); } } if (diagnostics.FolderSource != null) { foreach (DiagnosticsTypeFolderSource folderSource in diagnostics.FolderSource) { ValidateType <bool>( folderSource.IsEnabled, FolderSource, null, IsEnabled); ValidateRelativePath( folderSource.RelativeFolderPath, FolderSource, null, RelativeFolderPath); ValidatePositiveInteger( folderSource.DataDeletionAgeInDays, FolderSource, null, DataDeletionAgeInDays); if (folderSource.Destinations != null) { ValidateAzureBlob(folderSource.Destinations.AzureBlob, FolderSource); ValidateFileStore(folderSource.Destinations.FileStore, FolderSource); ValidateLocalStore(folderSource.Destinations.LocalStore, FolderSource); } } } }