Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La API del recopilador de datos HTTP de Azure Log Analytics permite enviar datos JSON a un área de trabajo de Log Analytics desde cualquier cliente que pueda llamar a la API de REST. Con este método, puede enviar datos desde aplicaciones de terceros o desde scripts, como desde un runbook en Azure Automation
Solicitud de URI
Para especificar el área de trabajo de Log Analytics, reemplace {CustomerID} por el identificador del área de trabajo.
| Método | Solicitud de URI |
|---|---|
| Publicar | https://{CustomerID}.ods.opinsights.azure.com/< Resource>?api-version=2016-04-01 |
| Solicitud | Parámetros de URI |
|---|---|
| Parámetro | Descripción |
| ID de Cliente | Identificador único para el área de trabajo de Log Analytics |
| Recurso | Nombre del recurso de API. /api/logs |
| Versión de la API | Versión de la API que se utilizará con esta solicitud. Actualmente 2016-04-01 |
Cabeceras de solicitud
Los encabezados de solicitud de la tabla siguiente son obligatorios.
| Cabecera | Descripción |
|---|---|
| Autorización | Consulte la información adicional a continuación sobre la creación de un encabezado HMAC-SHA256 |
| Tipo de contenido | Obligatorio. Establezca esto en application/json |
| Tipo de registro | Permite especificar el nombre del mensaje que se está enviando. Actualmente, el tipo de registro solo admite caracteres alfabéticos. No admite caracteres numéricos ni especiales |
| x-ms-fecha | La fecha en que se procesó la solicitud en formato RFC 1123 |
| campo generado por el tiempo | Permite especificar el campo de marca de tiempo del mensaje que se utilizará como campo TimeGenerated. Esto le permite configurar TimeGenerated para reflejar la marca de tiempo real de los datos del mensaje. Si no se especifica este campo, el valor predeterminado es TimeGenerated cuando se ingiere el mensaje. El campo de mensaje especificado debe seguir la norma ISO 8601 de AAAA-MM-DDThh:mm:ssZ |
Encabezado de autorización
Cualquier solicitud a la API del recopilador de datos HTTP de Log Analytics debe incluir el encabezado Authorization. Para autenticar una solicitud, debe firmar la solicitud con la clave principal o secundaria del área de trabajo que realiza la solicitud y pasar esa firma como parte de la solicitud.
El formato del encabezado Authorization es el siguiente:
Authorization: SharedKey <WorkspaceID>:<Signature>
WorkspaceID es el identificador único para el área de trabajo de Log Analytics y Signature es un código de autenticación de mensajes basado en hash (HMAC) construido a partir de la solicitud y calculado mediante el algoritmo SHA256 y, a continuación, codificado mediante codificación Base64.
Construyendo la cadena de firma
Para codificar la cadena de armadura de clave compartida, use el siguiente formato:
StringToSign = VERB + "\n" +
Content-Length + "\n" +
Content-Type + "\n" +
x-ms-date + "\n" +
"/api/logs";
En el ejemplo siguiente se muestra una cadena de firma:
POST \n1024\napplication/json\nx-ms-date:Mon, 04 Apr 2016 08:00:00 GMT\n/api/logs
A continuación, codifique esta cadena mediante el algoritmo HMAC-SHA256 sobre la cadena de firma codificada en UTF-8, construya el encabezado Authorization y agregue el encabezado a la solicitud.
Codificación de la firma
Para codificar la firma, llame al algoritmo HMAC-SHA256 en la cadena de firma codificada en UTF-8 y codifique el resultado como Base64. Utilice el siguiente formato (que se muestra como pseudocódigo):
Signature=Base64(HMAC-SHA256(UTF8(StringToSign)))
Cuerpo de la solicitud
El cuerpo del mensaje enviado al punto de conexión.
{
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4"
}
Puede agrupar varios mensajes del mismo tipo en un único cuerpo de solicitud.
[
{
"key1": "value1",
"key2": "value2",
"key3": "value3",
"key4": "value4"
},
{
"key1": "value5",
"key2": "value6",
"key3": "value7",
"key4": "value8"
}
]
Límites de datos
Existen algunas restricciones en torno a los datos publicados en la API de recopilación de datos de Log Analytics.
- Máximo de 30 MB por publicación en la API del recopilador de datos de Log Analytics. Se trata de un límite de tamaño para una sola publicación. Si los datos de una sola publicación superan los 30 MB, debe dividir los datos en fragmentos de menor tamaño y enviarlos al mismo tiempo.
- Límite de 32 kB para los valores de campo. Si el valor del campo es mayor que 32 KB, los datos se truncarán.
- El número máximo recomendado de campos para un tipo determinado es 50. Se trata de un límite práctico desde una perspectiva de facilidad de uso y experiencia de búsqueda.