Datadog


1Apresentação

O Datadog é um serviço que permite, entre outras coisas, centralizar os logs das suas aplicações em uma única interface. Isso pode ser muito útil quando sua aplicação web está distribuída em vários servidores e se torna difícil acompanhar vários arquivos de log simultaneamente.


2Configuração

No arquivo de configuração etc/temma.php, adicione o objeto \Temma\LogManagers\Datadog à diretriz logManager.

Você também deve adicionar uma configuração estendida x-datadog, com as seguintes chaves:

  • url: (obrigatório) URL de conexão da API do Datadog, dependendo da localização escolhida
    • EU: https://http-intake.logs.datadoghq.eu/api/v2/logs
    • US: https://http-intake.logs.datadoghq.com/api/v2/logs
    • US3: https://http-intake.logs.us3.datadoghq.com/api/v2/logs
    • US5: https://http-intake.logs.us5.datadoghq.com/api/v2/logs
    • US1-FED: https://http-intake.logs.ddog-gov.com/api/v2/logs
  • apiKey: (obrigatório) Sua chave de API
  • service: (opcional) Nome do serviço (site ou aplicação) que envia o log

Aqui está um exemplo de configuração:

<?php

return [
    'application' => [
        'logManager' => '\Temma\LogManagers\Datadog'
    ],
    'x-datadog' => [
        'url'     => 'https://http-intake.logs.datadoghq.eu/api/v2/logs',
        'apiKey'  => '...API_KEY...',
        'service' => 'temma.net',
    ]
];

3Uso

Na interface web do Datadog, é recomendável criar duas facetas:

  • TraceId, que conterá uma string de quatro caracteres, permitindo identificar os logs provenientes da mesma execução.
  • Class, que conterá a classe de registro do log.

Você pode adicionar essas facetas como colunas na tabela geral de monitoramento; isso tornará a leitura do fluxo de logs mais explícita.