New-AzApiManagementDiagnostic
在全域範圍或 Api 範圍建立新的診斷。
語法
New-AzApiManagementDiagnostic
-Context <PsApiManagementContext>
-LoggerId <String>
[-DiagnosticId <String>]
[-AlwaysLog <String>]
[-ApiId <String>]
[-SamplingSetting <PsApiManagementSamplingSetting>]
[-FrontEndSetting <PsApiManagementPipelineDiagnosticSetting>]
[-BackendSetting <PsApiManagementPipelineDiagnosticSetting>]
[-DefaultProfile <IAzureContextContainer>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Cmdlet New-AzApiManagementDiagnostic 會在全域範圍或特定 Api 範圍建立診斷實體。
範例
範例 1:建立新的全域範圍診斷
$context = New-AzApiManagementContext -ResourceGroupName "Api-Default-WestUS" -ServiceName "contoso"
$logger = Get-AzApiManagementLogger -Context $context -LoggerId "backendapisachinc"
$samplingsetting = New-AzApiManagementSamplingSetting -SamplingType fixed -SamplingPercentage 100
New-AzApiManagementDiagnostic -LoggerId $logger.LoggerId -Context $context -AlwaysLog allErrors -SamplingSetting $samplingSetting -DiagnosticId "applicationinsights"
DiagnosticId : applicationinsights
ApiId :
AlwaysLog : allErrors
LoggerId : backendapisachinc
EnableHttpCorrelationHeaders : True
SamplingSetting : Microsoft.Azure.Commands.ApiManagement.ServiceManagement.Models.PsApiManagementSamplingSetting
FrontendSetting :
BackendSetting :
Id : /subscriptions/subid/resourceGroups/Api-Default-WestUs/providers/Microsoft.ApiManagement/service/contoso/diagnostics/applicationinsights
ResourceGroupName : Api-Default-WestUs
ServiceName : contoso
此範例會在全域範圍建立診斷實體。
範例 2:在 Api 範圍建立診斷
$context = New-AzApiManagementContext -ResourceGroupName "Api-Default-WestUS" -ServiceName "contoso"
$logger = Get-AzApiManagementLogger -Context $context -LoggerId azuremonitor
$samplingsetting = New-AzApiManagementSamplingSetting -SamplingType fixed -SamplingPercentage 100
$httpMessageDiagnostic = New-AzApiManagementHttpMessageDiagnostic -HeadersToLog 'Content-Type', 'User-Agent' -BodyBytesToLog 100
$pipelineDiagnostic = New-AzApiManagementPipelineDiagnosticSetting -Request $httpMessageDiagnostic -Response $httpMessageDiagnostic
New-AzApiManagementDiagnostic -LoggerId $logger.LoggerId -Context $context -ApiId httpbin -AlwaysLog allErrors -SamplingSetting $samplingsetting -FrontEndSetting $pipelineDiagnostic -BackendSetting $pipelineDiagnostic -DiagnosticId azuremonitor
DiagnosticId : azuremonitor
ApiId : httpbin
AlwaysLog : allErrors
LoggerId : azuremonitor
EnableHttpCorrelationHeaders :
SamplingSetting : Microsoft.Azure.Commands.ApiManagement.ServiceManagement.Models.PsApiManagementSamplingSetting
FrontendSetting : Microsoft.Azure.Commands.ApiManagement.ServiceManagement.Models.PsApiManagementPipelineDiagnosticSetting
BackendSetting : Microsoft.Azure.Commands.ApiManagement.ServiceManagement.Models.PsApiManagementPipelineDiagnosticSetting
Id : /subscriptions/subid/resourceGroups/Api-Default-WestUS/providers/Microsoft.ApiManagement/service/contoso/apis/httpbin/diagnostics/azuremonitor
ResourceGroupName : Api-Default-WestUS
ServiceName : contoso
上述範例會建立 API httpbin
的診斷,以記錄要記錄的標頭和 100 個字節的 azuremonitor
Body。
參數
-AlwaysLog
指定不應該套用何種類型的訊息取樣設定。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-ApiId
現有 API 的識別碼。 如果指定 ,則會設定 API 範圍原則。 這是必要參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-BackendSetting
傳入/傳出 Http 訊息至後端的診斷設定。 這是選擇性參數。
類型: | PsApiManagementPipelineDiagnosticSetting |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-Confirm
執行 Cmdlet 之前先提示您確認。
類型: | SwitchParameter |
別名: | cf |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Context
PsApiManagementContext 的實例。 此為必要參數。
類型: | PsApiManagementContext |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-DefaultProfile
用於與 Azure 通訊的認證、帳戶、租用戶和訂用帳戶。
類型: | IAzureContextContainer |
別名: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-DiagnosticId
診斷實體的標識碼。 這是選擇性參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-FrontEndSetting
傳入/傳出 Http 訊息至閘道的診斷設定。 這是選擇性參數。
類型: | PsApiManagementPipelineDiagnosticSetting |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-LoggerId
要推送診斷的記錄器標識碼。 此為必要參數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-SamplingSetting
診斷的取樣設定。 這是選擇性參數。
類型: | PsApiManagementSamplingSetting |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-WhatIf
顯示執行 Cmdlet 後會發生的情況。 未執行 Cmdlet。
類型: | SwitchParameter |
別名: | wi |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸入
PsApiManagementSamplingSetting
PsApiManagementPipelineDiagnosticSetting