Diagnostic - Create Or Update
Crée un diagnostic ou met à jour un diagnostic existant.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/diagnostics/{diagnosticId}?api-version=2024-05-01
Paramètres URI
| Nom | Dans | Obligatoire | Type | Description |
|---|---|---|---|---|
|
diagnostic
|
path | True |
string minLength: 1maxLength: 80 pattern: ^[^*#&+:<>?]+$ |
Identificateur de diagnostic. Doit être unique dans l’instance actuelle du service Gestion des API. |
|
resource
|
path | True |
string minLength: 1maxLength: 90 |
Nom du groupe de ressources. Le nom ne respecte pas la casse. |
|
service
|
path | True |
string minLength: 1maxLength: 50 pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$ |
Nom du service Gestion des API. |
|
subscription
|
path | True |
string (uuid) |
ID de l’abonnement cible. La valeur doit être un UUID. |
|
api-version
|
query | True |
string minLength: 1 |
Version de l’API à utiliser pour cette opération. |
En-tête de la demande
| Nom | Obligatoire | Type | Description |
|---|---|---|---|
| If-Match |
string |
ETag de l’entité. Non obligatoire lors de la création d’une entité, mais obligatoire lors de la mise à jour d’une entité. |
Corps de la demande
| Nom | Obligatoire | Type | Description |
|---|---|---|---|
| properties.loggerId | True |
string |
ID de ressource d’un enregistreur d’événements cible. |
| properties.alwaysLog |
Spécifie le type de paramètres d’échantillonnage des messages qui ne doivent pas s’appliquer. |
||
| properties.backend |
Paramètres de diagnostic pour les messages HTTP entrants/sortants vers le serveur principal |
||
| properties.frontend |
Paramètres de diagnostic pour les messages HTTP entrants/sortants vers la passerelle. |
||
| properties.httpCorrelationProtocol |
Définit le protocole de corrélation à utiliser pour les diagnostics Application Insights. |
||
| properties.logClientIp |
boolean |
Journaliser Le ClientIP. La valeur par défaut est false. |
|
| properties.metrics |
boolean |
Émettre des métriques personnalisées via une stratégie d’émission de métriques. Applicable uniquement aux paramètres de diagnostic Application Insights. |
|
| properties.operationNameFormat |
Format du nom de l’opération pour les télémétries Application Insights. La valeur par défaut est Name. |
||
| properties.sampling |
Paramètres d’échantillonnage pour diagnostic. |
||
| properties.verbosity |
Niveau de détail appliqué aux traces émises par les stratégies de trace. |
Réponses
| Nom | Type | Description |
|---|---|---|
| 200 OK |
Diagnostic correctement mis à jour En-têtes ETag: string |
|
| 201 Created |
Le diagnostic a été créé avec succès. En-têtes ETag: string |
|
| Other Status Codes |
Réponse d’erreur décrivant pourquoi l’opération a échoué. |
Sécurité
azure_auth
Flux OAuth2 Azure Active Directory.
Type:
oauth2
Flux:
implicit
URL d’autorisation:
https://login.microsoftonline.com/common/oauth2/authorize
Étendues
| Nom | Description |
|---|---|
| user_impersonation | emprunter l’identité de votre compte d’utilisateur |
Exemples
ApiManagementCreateDiagnostic
Exemple de requête
PUT https://management.azure.com/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights?api-version=2024-05-01
{
"properties": {
"alwaysLog": "allErrors",
"loggerId": "/loggers/azuremonitor",
"sampling": {
"samplingType": "fixed",
"percentage": 50
},
"frontend": {
"request": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
},
"response": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
}
},
"backend": {
"request": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
},
"response": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
}
}
}
}
Exemple de réponse
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights",
"type": "Microsoft.ApiManagement/service/diagnostics",
"name": "applicationinsights",
"properties": {
"alwaysLog": "allErrors",
"loggerId": "/loggers/azuremonitor",
"sampling": {
"samplingType": "fixed",
"percentage": 50
},
"frontend": {
"request": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
},
"response": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
}
},
"backend": {
"request": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
},
"response": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
}
}
}
}
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/diagnostics/applicationinsights",
"type": "Microsoft.ApiManagement/service/diagnostics",
"name": "applicationinsights",
"properties": {
"alwaysLog": "allErrors",
"loggerId": "/loggers/applicationinsights",
"sampling": {
"samplingType": "fixed",
"percentage": 50
},
"frontend": {
"request": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
},
"response": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
}
},
"backend": {
"request": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
},
"response": {
"headers": [
"Content-type"
],
"body": {
"bytes": 512
}
}
}
}
}
Définitions
| Nom | Description |
|---|---|
|
Always |
Spécifie le type de paramètres d’échantillonnage des messages qui ne doivent pas s’appliquer. |
|
Body |
Paramètres de journalisation du corps. |
|
Data |
|
|
Data |
|
|
Data |
Mode de masquage des données. |
|
Diagnostic |
Détails du diagnostic. |
|
Error |
Informations supplémentaires sur l’erreur de gestion des ressources. |
|
Error |
Détail de l’erreur. |
|
Error |
Réponse d’erreur |
|
Http |
Définit le protocole de corrélation à utiliser pour les diagnostics Application Insights. |
|
Http |
Paramètres de diagnostic des messages HTTP. |
|
Operation |
Format du nom de l’opération pour les télémétries Application Insights. La valeur par défaut est Name. |
|
Pipeline |
Paramètres de diagnostic pour les messages HTTP entrants/sortants vers la passerelle. |
|
Sampling |
Paramètres d’échantillonnage pour diagnostic. |
|
Sampling |
Type d’échantillonnage. |
| Verbosity |
Niveau de détail appliqué aux traces émises par les stratégies de trace. |
AlwaysLog
Spécifie le type de paramètres d’échantillonnage des messages qui ne doivent pas s’appliquer.
| Valeur | Description |
|---|---|
| allErrors |
Consignez toujours toutes les demandes erronées, quels que soient les paramètres d’échantillonnage. |
BodyDiagnosticSettings
Paramètres de journalisation du corps.
| Nom | Type | Description |
|---|---|---|
| bytes |
integer (int32) maximum: 8192 |
Nombre d’octets du corps de la demande à consigner. |
DataMasking
| Nom | Type | Description |
|---|---|---|
| headers |
Paramètres de masquage des en-têtes |
|
| queryParams |
Paramètres de masquage des paramètres de requête d’URL |
DataMaskingEntity
| Nom | Type | Description |
|---|---|---|
| mode |
Mode de masquage des données. |
|
| value |
string |
Nom d’une entité à masquer (par exemple, un nom d’en-tête ou un paramètre de requête). |
DataMaskingMode
Mode de masquage des données.
| Valeur | Description |
|---|---|
| Mask |
Masquez la valeur d’une entité. |
| Hide |
Masquez la présence d’une entité. |
DiagnosticContract
Détails du diagnostic.
| Nom | Type | Description |
|---|---|---|
| id |
string |
ID de ressource complet pour la ressource. ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} |
| name |
string |
Nom de la ressource |
| properties.alwaysLog |
Spécifie le type de paramètres d’échantillonnage des messages qui ne doivent pas s’appliquer. |
|
| properties.backend |
Paramètres de diagnostic pour les messages HTTP entrants/sortants vers le serveur principal |
|
| properties.frontend |
Paramètres de diagnostic pour les messages HTTP entrants/sortants vers la passerelle. |
|
| properties.httpCorrelationProtocol |
Définit le protocole de corrélation à utiliser pour les diagnostics Application Insights. |
|
| properties.logClientIp |
boolean |
Journaliser Le ClientIP. La valeur par défaut est false. |
| properties.loggerId |
string |
ID de ressource d’un enregistreur d’événements cible. |
| properties.metrics |
boolean |
Émettre des métriques personnalisées via une stratégie d’émission de métriques. Applicable uniquement aux paramètres de diagnostic Application Insights. |
| properties.operationNameFormat |
Format du nom de l’opération pour les télémétries Application Insights. La valeur par défaut est Name. |
|
| properties.sampling |
Paramètres d’échantillonnage pour diagnostic. |
|
| properties.verbosity |
Niveau de détail appliqué aux traces émises par les stratégies de trace. |
|
| type |
string |
Type de la ressource. Par exemple, « Microsoft.Compute/virtualMachines » ou « Microsoft.Storage/storageAccounts » |
ErrorAdditionalInfo
Informations supplémentaires sur l’erreur de gestion des ressources.
| Nom | Type | Description |
|---|---|---|
| info |
object |
Informations supplémentaires. |
| type |
string |
Type d’informations supplémentaire. |
ErrorDetail
Détail de l’erreur.
| Nom | Type | Description |
|---|---|---|
| additionalInfo |
Informations supplémentaires sur l’erreur. |
|
| code |
string |
Code d’erreur. |
| details |
Détails de l’erreur. |
|
| message |
string |
Message d’erreur. |
| target |
string |
Cible d’erreur. |
ErrorResponse
Réponse d’erreur
| Nom | Type | Description |
|---|---|---|
| error |
Objet d’erreur. |
HttpCorrelationProtocol
Définit le protocole de corrélation à utiliser pour les diagnostics Application Insights.
| Valeur | Description |
|---|---|
| None |
Ne lisez pas et injectez des en-têtes de corrélation. |
| Legacy |
Injectez des en-têtes Request-Id et Request-Context avec des données de corrélation de requête. Voir https://github.com/dotnet/corefx/blob/master/src/System.Diagnostics.DiagnosticSource/src/HttpCorrelationProtocol.md. |
| W3C |
Injecter des en-têtes de contexte de trace. Voir https://w3c.github.io/trace-context. |
HttpMessageDiagnostic
Paramètres de diagnostic des messages HTTP.
| Nom | Type | Description |
|---|---|---|
| body |
Paramètres de journalisation du corps. |
|
| dataMasking |
Paramètres de masquage des données. |
|
| headers |
string[] |
Tableau d’en-têtes HTTP à journaliser. |
OperationNameFormat
Format du nom de l’opération pour les télémétries Application Insights. La valeur par défaut est Name.
| Valeur | Description |
|---|---|
| Name |
API_NAME ; rev=API_REVISION - OPERATION_NAME |
| Url |
HTTP_VERB URL |
PipelineDiagnosticSettings
Paramètres de diagnostic pour les messages HTTP entrants/sortants vers la passerelle.
| Nom | Type | Description |
|---|---|---|
| request |
Paramètres de diagnostic pour la demande. |
|
| response |
Paramètres de diagnostic pour la réponse. |
SamplingSettings
Paramètres d’échantillonnage pour diagnostic.
| Nom | Type | Description |
|---|---|---|
| percentage |
number (double) minimum: 0maximum: 100 |
Taux d’échantillonnage pour l’échantillonnage à taux fixe. |
| samplingType |
Type d’échantillonnage. |
SamplingType
Type d’échantillonnage.
| Valeur | Description |
|---|---|
| fixed |
Échantillonnage à taux fixe. |
Verbosity
Niveau de détail appliqué aux traces émises par les stratégies de trace.
| Valeur | Description |
|---|---|
| verbose |
Toutes les traces émises par les stratégies de trace sont envoyées à l’enregistreur d’événements attaché à cette instance de diagnostic. |
| information |
Les traces avec la valeur « gravité » définie sur « information » et « error » sont envoyées à l’enregistreur d’événements attaché à cette instance de diagnostic. |
| error |
Seules les traces dont la valeur est « gravité » définie sur « error » sont envoyées à l’enregistreur d’événements attaché à cette instance de diagnostic. |