Requête HTTP d’ingestion en streaming
Verbe et ressource de requête
Action | Verbe HTTP | Ressource HTTP |
---|---|---|
Ingérer | POST | /v1/rest/ingest/{database}/{table}?{additional parameters} |
Paramètres de la demande
Paramètre | Description | Obligatoire ou facultatif |
---|---|---|
{database} |
Nom de la base de données cible pour la demande d’ingestion | Obligatoire |
{table} |
Nom de la table cible pour la demande d’ingestion | Obligatoire |
Paramètres supplémentaires
Les paramètres supplémentaires sont mis en forme en tant que paires de requête {name}={value}
d’URL, séparées par le caractère &.
Paramètre | Description | Obligatoire ou facultatif |
---|---|---|
streamFormat |
Spécifie le format des données dans le corps de la demande. La valeur doit être : CSV , TSV , SCsv , SOHsv , PSV , JSON , MultiJSON Avro . Pour plus d’informations, consultez Formats de données pris en charge. |
Obligatoire |
mappingName |
Nom du mappage d’ingestion précréé défini sur la table. Pour plus d’informations, consultez Mappages de données. La façon de gérer les mappages précréé sur la table est décrite ici. | Facultatif, mais Obligatoire si streamFormat est l’un des JSON , MultiJSON ou Avro |
Par exemple, pour ingérer des données au format CSV dans une table Logs
dans la base de données Test
, utilisez :
POST https://help.kusto.windows.net/v1/rest/ingest/Test/Logs?streamFormat=Csv HTTP/1.1
Pour ingérer des données au format JSON avec un mappage mylogmapping
précréé, utilisez :
POST https://help.kusto.windows.net/v1/rest/ingest/Test/Logs?streamFormat=Json&mappingName=mylogmapping HTTP/1.1
En-têtes de requête
Le tableau suivant contient les en-têtes courants pour les opérations de requête et de gestion.
En-tête standard | Description | Obligatoire ou facultatif |
---|---|---|
Accept |
Définissez cette valeur sur application/json . |
Facultatif |
Accept-Encoding |
Les encodages pris en charge sont gzip et deflate . |
Facultatif |
Authorization |
Consultez Authentification. | Obligatoire |
Connection |
Activez Keep-Alive . |
Facultatif |
Content-Length |
Spécifiez la longueur du corps de la demande, lorsqu’elle est connue. | Facultatif |
Content-Encoding |
Défini sur gzip , mais le corps doit être gzip-compressed |
Facultatif |
Expect |
Défini sur 100-Continue . |
Facultatif |
Host |
Définissez sur le nom de domaine auquel vous avez envoyé la demande (par exemple, help.kusto.windows.net ). |
Obligatoire |
Le tableau suivant contient les en-têtes personnalisés courants pour les opérations de requête et de gestion. Sauf indication contraire, les en-têtes sont à des fins de télémétrie uniquement et n’ont aucun impact sur les fonctionnalités.
En-tête personnalisé | Description | Obligatoire ou facultatif |
---|---|---|
x-ms-app |
Nom (convivial) de l’application qui effectue la demande. | Facultatif |
x-ms-user |
Nom (convivial) de l’utilisateur qui effectue la demande. | Facultatif |
x-ms-user-id |
Comme pour x-ms-user . |
Facultatif |
x-ms-client-request-id |
Identificateur unique de la requête. | Facultatif |
x-ms-client-version |
Identificateur de version (convivial) pour le client qui effectue la demande. Obligatoire dans les scénarios, où il est utilisé pour identifier la requête, comme l’annulation d’une requête en cours d’exécution. | Facultatif/obligatoire |
Corps
Le corps est les données réelles à ingérer. Les formats textuels doivent utiliser l’encodage UTF-8.
Exemples
L’exemple suivant montre la requête HTTP POST pour l’ingestion de contenu JSON :
POST https://help.kusto.windows.net/v1/rest/ingest/Test/Logs?streamFormat=Json&mappingName=mylogmapping HTTP/1.1
En-têtes de requête :
Authorization: Bearer ...AzureActiveDirectoryAccessToken...
Accept-Encoding: deflate
Accept-Encoding: gzip
Connection: Keep-Alive
Content-Length: 161
Host: help.kusto.windows.net
x-ms-client-request-id: MyApp.Ingest;5c0656b9-37c9-4e3a-a671-5f83e6843fce
x-ms-user-id: alex@contoso.com
x-ms-app: MyApp
Corps de la requête :
{"Timestamp":"2018-11-14 11:34","Level":"Info","EventText":"Nothing Happened"}
{"Timestamp":"2018-11-14 11:35","Level":"Error","EventText":"Something Happened"}
L’exemple suivant montre la requête HTTP POST pour ingérer les mêmes données compressées.
POST https://help.kusto.windows.net/v1/rest/ingest/Test/Logs?streamFormat=Json&mappingName=mylogmapping HTTP/1.1
En-têtes de requête :
Authorization: Bearer ...AzureActiveDirectoryAccessToken...
Accept-Encoding: deflate
Accept-Encoding: gzip
Connection: Keep-Alive
Content-Length: 116
Content-Encoding: gzip
Host: help.kusto.windows.net
x-ms-client-request-id: MyApp.Ingest;5c0656b9-37c9-4e3a-a671-5f83e6843fce
x-ms-user-id: alex@contoso.com
x-ms-app: MyApp
Corps de la requête :
... binary data ...
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour