Encaminhamento de logs log-forwarding

NOTE
Uma versão beta para autenticação TLS mútua (mTLS) está disponível para destinos do Splunk, Elasticsearch/OpenSearch e HTTPS, para logs do AEM (incluindo Apache/Dispatcher) e CDN. Para participar, envie um email para aemcs-logforwarding-beta@adobe.com com a ID do programa e as IDs do ambiente. Consulte Autenticação TLS (mTLS) mútua.
NOTE
O encaminhamento de logs agora é configurado no modo de autoatendimento, diferente do método herdado, que exigiu o envio de um tíquete de Suporte da Adobe. Consulte a seção Migrando se o encaminhamento de logs tiver sido configurado pela Adobe.
NOTE
A AEM as a Cloud Service também oferece suporte ao envio de logs via OpenTelemetry (OTLP), como parte de OpenTelemetry (Disponibilidade Limitada). Se ativar ambos no mesmo destino, você receberá mensagens de log duplicadas lá — consulte essa página para obter detalhes.

Os clientes com uma licença de com um fornecedor de registro em log ou que hospedam um produto de registro em log podem ter registros do AEM (incluindo Apache/Dispatcher) e registros CDN encaminhados ao destino de registro associado. O AEM as a Cloud Service oferece suporte aos seguintes destinos de registro:

Tecnologia de registros
AEM
Dispatcher
CDN
mTLS
Amazon S3
Sim
Sim
Beta [1]
Não
Armazenamento Azure Blob
Sim
Sim
Sim
Não
DataDog
Sim
Sim
Sim
Não
Dynatrace
Sim
Sim
Beta [1]
Não
Elasticsearch
OpenSearch
Sim
Sim
Sim
Beta
HTTPS
Sim
Sim
Sim
Beta
New Relic
Sim
Sim
Beta [1]
Não
Splunk
Sim
Sim
Sim
Beta
Lógica Sumo
Sim
Sim
Sim
Não

[1] O encaminhamento de logs da CDN para o Amazon S3, o Dynatrace e o New Relic está na versão beta. Para solicitar acesso, envie um email para aemcs-logforwarding-beta@adobe.com com a ID do seu programa. Após habilitar o acesso, você também ativa os logs CDN para cada destino com cdn.enabled: true. Consulte logs de CDN do Amazon S3, Dynatrace e New Relic (beta).

NOTE
As Tecnologias de Log marcadas como Beta na coluna mTLS dão suporte à autenticação de certificado de cliente (TLS mútuo) para logs do AEM, Dispatcher e CDN. O mTLS está na versão beta. Para solicitar acesso, envie um email para aemcs-logforwarding-beta@adobe.com com sua ID de programa e suas IDs de ambiente. Consulte Autenticação TLS (mTLS) mútua.

O encaminhamento de logs é configurado de maneira automatizada declarando uma configuração no Git e pode ser implantado por meio de pipelines de configuração do Cloud Manager para tipos de ambiente de desenvolvimento, preparo e produção. O arquivo de configuração pode ser implantado em RDEs (Rapid Development Environments, ambientes de desenvolvimento rápido) usando ferramentas de linha de comando.

Há uma opção para que os registros do AEM e Apache/Dispatcher sejam roteados por meio da infraestrutura de rede avançada da AEM, como IP de saída dedicado. Os logs CDN são sempre enviados diretamente do CDN e não usam rede avançada. Consulte Transporte e rede avançada.

Como este artigo está organizado how-organized

Este artigo está organizado da seguinte maneira:

  • Configuração - comum para todos os destinos de registro
  • Transporte e rede avançada - considere a configuração da rede antes de criar a configuração de registro
  • Autenticação TLS mútuo (mTLS) (beta) - autenticação para destinos Splunk, Elasticsearch/OpenSearch e HTTPS com um certificado de cliente
  • Configurações de destino de registro - cada destino tem um formato um pouco diferente
  • Logs CDN para Amazon S3, Dynatrace e New Relic (beta) - como solicitar acesso a logs CDN para esses destinos e habilitá-los
  • Formatos de Entrada de Log - informações sobre os formatos de entrada de log
  • Migração do encaminhamento de log herdado - como migrar do encaminhamento de log previamente configurado pela Adobe para a abordagem de autoatendimento

Configurar setup

  1. Crie um arquivo chamado logForwarding.yaml. Ele deve conter metadados, conforme descrito no artigo Pipeline de Configuração (kind deve ser definido como LogForwarding e a versão definida como “1”), com uma configuração semelhante à seguinte (usamos o Splunk como exemplo).

    code language-yaml
    kind: "LogForwarding"
    version: "1"
    data:
      splunk:
        default:
          enabled: true
          host: "splunk-host.example.com"
          token: "${{SPLUNK_TOKEN}}"
          index: "AEMaaCS"
    
  2. Coloque o arquivo em algum lugar em uma pasta de nível superior chamada config ou similar, conforme descrito em Usando Pipelines de Configuração.

  3. Para tipos de ambiente diferentes de RDE (que usa ferramentas de linha de comando), crie um pipeline de configuração de implantação direcionada no Cloud Manager, conforme referenciado por esta seção; observe que os pipelines de Empilhamento completo e de Camada da Web não implantam o arquivo de configuração.

  4. Implante a configuração.

Os tokens na configuração (como ${{SPLUNK_TOKEN}}) representam segredos que não devem ser armazenados no Git. Em vez disso, declare-as como Variáveis de ambiente secreto do Cloud Manager. Selecione Todos como o valor suspenso do campo Serviço aplicado, para que os logs possam ser encaminhados para os níveis de criação, publicação e visualização.

É possível definir valores diferentes entre logs CDN e logs AEM (incluindo Apache/Dispatcher), incluindo um bloco cdn e/ou aem adicional após o bloco padrão, em que as propriedades podem substituir as definidas no bloco padrão; somente a propriedade habilitada é necessária. Um possível caso de uso poderia ser o uso de um índice do Splunk diferente para logs CDN, como ilustra o exemplo abaixo.

   kind: "LogForwarding"
   version: "1"
   data:
     splunk:
       default:
         enabled: true
         host: "splunk-host.example.com"
         token: "${{SPLUNK_TOKEN}}"
         index: "AEMaaCS"
       cdn:
         enabled: true
         token: "${{SPLUNK_TOKEN_CDN}}"
         index: "AEMaaCS_CDN"
NOTE
Para o Amazon S3, Dynatrace e New Relic, os logs de CDN estão na versão beta. Eles são encaminhados somente quando o programa tem acesso ao beta e o bloco cdn define enabled: true. Consulte logs de CDN do Amazon S3, Dynatrace e New Relic (beta).

Outro cenário é desativar o encaminhamento dos logs CDN ou AEM (incluindo o Apache/Dispatcher). Por exemplo, para encaminhar apenas os logs CDN, é possível configurar o seguinte:

   kind: "LogForwarding"
   version: "1"
   data:
     splunk:
       default:
         enabled: true
         host: "splunk-host.example.com"
         token: "${{SPLUNK_TOKEN}}"
         index: "AEMaaCS"
       aem:
         enabled: false

Transporte e rede avançada transport-advancednetworking

Algumas organizações escolhem restringir qual tráfego pode ser recebido pelos destinos de registro, outras podem exigir o uso de portas diferentes de HTTPS (443). Nesse caso, a Rede Avançada precisará ser configurada antes da implantação da configuração de encaminhamento de log.

Use a tabela abaixo para ver quais são os requisitos para a configuração avançada de rede e registro com base no fato de você estar usando ou não a porta 443 e se você precisa ou não que seus registros apareçam a partir de um endereço IP fixo. A tabela se aplica aos logs do AEM (incluindo o Apache/Dispatcher). Para logs CDN, consulte logs CDN e listas de permissões IP.

Porta de destino
Requisito para que os registros apareçam do IP fixo?
Redes avançadas necessárias
Definição de Porta LogForwarding.yaml Necessária
HTTPS (443)
Não
Não
Não
Sim
Sim, Saída Dedicada
Não
Porta não padrão (por exemplo, 8088)
Não
Sim, Saída flexível
Sim
Sim
Sim, Saída Dedicada
Sim
NOTE
O fato de seus registros serem exibidos a partir de um único endereço IP é determinado pela sua escolha de configuração avançada de rede. A saída dedicada deve ser usada para facilitar isso.
A configuração avançada de rede é um processo de duas etapas que requer ativação no nível do programa e do ambiente.
De acordo com a observação abaixo, não é possível usar o encaminhamento de logs com conexões VPN de rede avançada.

Para logs AEM (incluindo Apache/Dispatcher), se você tiver configurado a Rede Avançada, poderá usar a propriedade aem.advancedNetworking para encaminhá-los a partir de um endereço IP de saída dedicado.

O exemplo abaixo mostra como configurar o registro em uma porta HTTPS padrão com rede avançada.

kind: "LogForwarding"
version: "1"
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      port: 443
      token: "${{SPLUNK_TOKEN}}"
      index: "aemaacs"
    aem:
      advancedNetworking: true

Logs CDN e listas de permissões IP cdn-ip-allowlist

Os logs CDN são enviados diretamente do CDN (Fastly), não do AEM as a Cloud Service. Isso se aplica a todos os destinos de registro em log:

  • Os logs CDN são enviados dos intervalos de endereços IP compartilhados do Fastly, publicados em https://api.fastly.com/public-ip-list. Eles nunca são enviados do seu endereço IP de saída dedicado.
  • A propriedade advancedNetworking se aplica somente aos logs do AEM (incluindo Apache/Dispatcher). Isso não afeta os logs de CDN. Se advancedNetworking estiver definido e o encaminhamento de log CDN estiver habilitado para o mesmo destino, a configuração será implantada com um aviso como lembrete.
  • Se o destino de registro aceitar apenas o tráfego de endereços IP específicos, adicione todos dos intervalos IPv4 e IPv6 publicados do Fastly à lista de permissões, além do endereço IP de Saída Dedicado para os logs do AEM. Um destino que permite somente seu endereço IP de saída dedicado não recebe logs CDN.
  • Os intervalos de endereço IP do Fastly mudam com o tempo, às vezes em semanas. Revise a lista publicada regularmente e mantenha suas listas de permissões atualizadas.
  • O Amazon S3 tem considerações adicionais para logs CDN. Consulte logs de CDN do Amazon S3.

Se a lista de endereços IP compartilhados for muito grande para a lista de permissões, considere enviar logs CDN para um servidor https ou (que não seja da Adobe) Azure Blob Store, onde a lógica pode ser gravada para enviar os logs de um IP conhecido para o destino final.

NOTE
Não é possível que os logs CDN apareçam a partir do mesmo endereço IP que os logs do AEM aparecem. Isso ocorre porque os logs são enviados diretamente do Fastly e não pelo AEM Cloud Service.
Por esse motivo, não é possível usar o encaminhamento de logs com configurações VPN avançadas de rede.

Autenticação TLS mútuo (mTLS) (beta) mtls

NOTE
O mTLS para encaminhamento de logs é um recurso beta. Para usá-lo, envie um email para aemcs-logforwarding-beta@adobe.com com a ID do programa e as IDs do ambiente.

Os destinos Splunk, Elasticsearch/OpenSearch e HTTPS são compatíveis com TLS mútuo (mTLS). Com o mTLS, o AEM as a Cloud Service apresenta um certificado de cliente quando se conecta ao seu destino de registro, para que o destino possa verificar se os registros vêm do seu ambiente. O mTLS se aplica aos logs do AEM (incluindo Apache/Dispatcher) e aos logs CDN.

O mTLS funciona com a autenticação existente do destino. Mantenha as propriedades de autenticação existentes do destino, como token (Splunk) ou user e password (Elasticsearch/OpenSearch). Para destinos HTTPS que encaminham logs CDN, authHeaderName e authHeaderValue são necessários.

Configuração mtls-configuration

Adicionar um bloco mtls ao lado das outras propriedades do destino:

  • cert - obrigatório. O certificado do cliente, no formato PEM. Ela pode ser seguida por certificados intermediários da CA, com o certificado do cliente primeiro.
  • key - obrigatório. A chave privada do certificado de cliente, no formato PEM. As chaves RSA e EC são compatíveis, não criptografadas ou criptografadas. Consulte Formatos de chave com suporte.
  • ca - opcional. O certificado CA, em formato PEM, usado para verificar o certificado do servidor de destino. Ela pode conter mais de um certificado, como uma cadeia de certificados. Defina-o quando o certificado do servidor for emitido por uma autoridade de certificação privada.
  • keyPasswd - opcional. A senha da chave privada. Defina-a somente se a chave estiver criptografada.

O exemplo a seguir encaminha logs do AEM e do CDN para o Splunk usando mTLS:

kind: "LogForwarding"
version: "1"
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      token: "${{SPLUNK_TOKEN}}"
      index: "aemaacs"
      mtls:
        cert: "${{SPLUNK_MTLS_CERT}}"
        key: "${{SPLUNK_MTLS_KEY}}"
        ca: "${{SPLUNK_MTLS_CA}}"

As seguintes regras se aplicam:

  • cert e key devem ser fornecidos juntos. Um bloco mtls que contém apenas ca ou keyPasswd foi rejeitado.
  • Cada propriedade mtls deve ser uma referência secreta, como ${{SPLUNK_MTLS_CERT}}, e nada mais. O texto do certificado ou da chave colocado diretamente no arquivo é rejeitado.
  • Declare cada segredo como uma Variável de Ambiente Secreta do Cloud Manager, conforme descrito em Instalação. Cole o texto PEM completo, incluindo as linhas -----BEGIN e -----END. Se as quebras de linha forem removidas quando você colar o valor no Cloud Manager, elas serão restauradas automaticamente. Para fornecer mais de um certificado, cole-os um após o outro no mesmo segredo.
  • O certificado do cliente é verificado ao implantar. Ele deve ser um PEM válido e estar dentro de seu período de validade. Se cert contiver mais de um certificado, o certificado do cliente deverá vir primeiro e os certificados deverão formar uma cadeia válida. Se uma verificação falhar, a implantação falha.

Formatos de chave compatíveis mtls-key-formats

A primeira linha do texto PEM da chave mostra seu formato:

Formato da chave
Primeira linha do texto PEM
RSA, PKCS#1
-----BEGIN RSA PRIVATE KEY-----
EC, SEC1
-----BEGIN EC PRIVATE KEY-----
PKCS#8 (RSA ou EC)
-----BEGIN PRIVATE KEY-----
PKCS#8 criptografado (RSA ou EC)
-----BEGIN ENCRYPTED PRIVATE KEY-----
Formato mais antigo criptografado (RSA ou EC), com AES ou DES triplo (DES-EDE3-CBC)
-----BEGIN RSA PRIVATE KEY----- ou -----BEGIN EC PRIVATE KEY-----, seguido por Proc-Type: 4,ENCRYPTED e DEK-Info linhas

Para uma chave criptografada, também defina keyPasswd como sua senha.

PKCS#8 criptografado é recomendado para chaves criptografadas. Para converter uma chave no formato mais antigo, use o seguinte comando, que solicita a senha atual e, em seguida, a senha da nova chave:

openssl pkcs8 -topk8 -v2 aes-256-cbc -in client.key -out client-pkcs8.key

Armazene o conteúdo de client-pkcs8.key no segredo referenciado por key e sua senha no segredo referenciado por keyPasswd.

Logs da CDN mtls-cdn

Como outras propriedades, um bloco mtls em default se aplica aos logs do AEM e aos logs CDN. Para usar um certificado diferente para logs CDN, defina as propriedades mtls em um bloco cdn. Para usar mTLS apenas para logs AEM ou apenas logs CDN, coloque o bloco mtls no bloco aem ou cdn em vez de default.

Depois de implantar uma configuração que permita o encaminhamento de logs CDN para um destino, pode levar vários minutos até que os primeiros logs CDN cheguem. Para destinos HTTPS, a entrega de logs da CDN também inicia somente depois que o servidor conclui o desafio único descrito em HTTPS. A solicitação de desafio é enviada com o mesmo certificado de cliente, portanto, o servidor também deve aceitar esse certificado no caminho de desafio.

Rotação e expiração do certificado mtls-rotation

Para girar um certificado, atualize as variáveis de ambiente secretas do Cloud Manager que contêm o certificado (e a chave, se ele for alterado) e execute novamente o pipeline de configuração. Se o próprio arquivo de configuração do encaminhamento de log não for alterado, faça também uma alteração nele para que a configuração seja aplicada novamente. Por exemplo, armazene os novos valores em novas variáveis de ambiente secreto e faça referência a esses nomes no bloco mtls.

Você também pode receber uma notificação proativa do Centro de Ações cerca de 21 dias antes de um certificado de cliente expirar. Rastrear as datas de expiração do certificado por conta própria em vez de depender dessa notificação.

Configuração de destino de registro logging-destinations

As configurações para os destinos de registro compatíveis estão listadas abaixo, juntamente com considerações específicas.

Amazon S3 amazons3

Os logs de CDN para o Amazon S3 estão na versão beta. Para solicitar acesso, envie um email para aemcs-logforwarding-beta@adobe.com com a ID do seu programa. Consulte logs CDN do Amazon S3, Dynatrace e New Relic (beta) para saber como habilitá-los, e logs CDN do Amazon S3 para saber o layout do arquivo e fazer considerações.

NOTE
Os logs do AEM (incluindo o Apache/Dispatcher) são carregados no S3 para cada tipo de arquivo de log quando 100 MB de logs são coletados ou após 10 minutos, o que ocorrer primeiro. Isso pode resultar em um atraso inicial para que os logs sejam gravados em S3 quando o recurso for alternado. Mais informações sobre este comportamento. Os logs CDN são gravados de forma diferente; consulte logs CDN do Amazon S3.
kind: "LogForwarding"
version: "1"
data:
  awsS3:
    default:
      enabled: true
      region: "your-bucket-region"
      bucket: "your-bucket-name"
      accessKey: "${{AWS_S3_ACCESS_KEY}}"
      secretAccessKey: "${{AWS_S3_SECRET_ACCESS_KEY}}"

Para encaminhar logs do AEM e de CDN (logs de CDN na versão beta):

kind: "LogForwarding"
version: "1"
data:
  awsS3:
    default:
      enabled: true
      region: "us-east-1"
      bucket: "your-bucket-name"
      accessKey: "${{AWS_S3_ACCESS_KEY}}"
      secretAccessKey: "${{AWS_S3_SECRET_ACCESS_KEY}}"
    cdn:
      enabled: true

Para encaminhar somente logs CDN (na versão beta):

kind: "LogForwarding"
version: "1"
data:
  awsS3:
    default:
      enabled: true
      region: "us-east-1"
      bucket: "your-bucket-name"
      accessKey: "${{AWS_S3_ACCESS_KEY}}"
      secretAccessKey: "${{AWS_S3_SECRET_ACCESS_KEY}}"
    aem:
      enabled: false
    cdn:
      enabled: true

Para usar o S3 Log Forwarder, será necessário pré-configurar um usuário do AWS IAM com política apropriada para acessar seu bucket do S3. Consulte Documentação de Usuário do AWS IAM para saber como criar credenciais de usuário do IAM.

A política IAM deve permitir que o usuário use s3:PutObject. Para encaminhar logs CDN (na versão beta), também permita s3:AbortMultipartUpload. Nenhuma outra permissão é necessária: o usuário não precisa ler ou listar o bucket. Por exemplo:

{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "s3:PutObject",
            "s3:AbortMultipartUpload"
        ],
        "Resource": "arn:aws:s3:::your-bucket-name/*"
    }]
}

Se o bucket receber apenas logs CDN, você poderá limitar Resource a arn:aws:s3:::your-bucket-name/aemcdn/*.

Consulte a Documentação da política de bucket do AWS para obter mais informações sobre como implementar o.

Registros CDN do Amazon S3 (beta) amazons3-cdn

Os logs de CDN para o Amazon S3 estão na versão beta. Eles precisam de acesso ao seu programa e ao cdn.enabled: true. Consulte logs de CDN do Amazon S3, Dynatrace e New Relic (beta).

Os logs CDN são gravados abaixo da pasta aemcdn/ do seu bucket. O formato do nome do arquivo é YYYY-MM-DDThh:mm:ss.000-<uniqueid>.log.gz. Por exemplo:

aemcdn/
   2026-03-04T10:00:00.000-WnFWYN9BpOUs2aOVn4ee.log.gz
   2026-03-04T10:00:00.000-0pX8ub2yQcAmLs7rT1kd.log.gz
   2026-03-04T10:05:00.000-h3JkVv9ZqN2wE5sXyR0a.log.gz
  • Os arquivos são compactados por gzip. Cada arquivo contém várias entradas de log, um objeto JSON por linha. As entradas têm as mesmas propriedades que os logs CDN gravados no Azure Blob Storage. O formato de entrada de log está descrito em Logs para AEM as a Cloud Service, e cada entrada também inclui as propriedades adicionais mencionadas na seção Formatos de Entrada de Log abaixo.
  • Um novo conjunto de arquivos é gravado a cada 5 minutos. A CDN tem muitos servidores, e cada servidor que manipulou seu tráfego grava seu próprio arquivo, portanto, espere muitos arquivos para cada período de 5 minutos, mesmo com pouco tráfego. Por exemplo, um ambiente de teste de tráfego baixo produziu cerca de 50 arquivos a cada 5 minutos.
  • As entradas de log geralmente aparecem no intervalo de 1 a 6 minutos após a solicitação.
  • A hora no nome do arquivo não é uma janela de hora exata e os arquivos se sobrepõem. Por exemplo, um arquivo chamado …T16:00:00.000-….log.gz pode conter entradas de 15:55 a 16:04. Use a propriedade timestamp de cada entrada para descobrir quando ocorreu uma solicitação.
  • Os arquivos não são alterados após serem gravados.

Os clientes são responsáveis pelo processamento e gerenciamento desses arquivos, por exemplo, com uma regra de ciclo de vida S3 no prefixo aemcdn/.

Considerações para logs CDN (beta):

  • A autenticação usa a chave de acesso de um usuário do IAM. As funções IAM não são compatíveis.

  • O usuário IAM só precisa de s3:PutObject e s3:AbortMultipartUpload. Não é necessário permissão para ler ou listar o bucket.

  • A criptografia de bucket padrão com chaves gerenciadas do Amazon S3 (SSE-S3) é compatível, e os arquivos de log de CDN são criptografados em repouso.

  • Somente os buckets nas regiões comerciais padrão do AWS são compatíveis. As regiões AWS GovCloud (EUA) e AWS China não são compatíveis. A propriedade region deve ser a região do bucket.

  • Carregamentos rejeitados não são repetidos. Se a política de bucket ou as permissões do usuário do IAM rejeitarem um upload de logs CDN, as entradas de log nesse upload serão perdidas sem aviso. Isso é diferente dos logs do AEM, em que os uploads com falha são repetidos. Certifique-se de que as alterações na política de bucket ou no usuário do IAM não bloqueiem os uploads da CDN.

  • Recomendamos um usuário IAM que tenha somente permissão de s3:PutObject e s3:AbortMultipartUpload no bucket (ou somente no prefixo aemcdn/, se o bucket receber apenas logs CDN) e uma política de bucket sem condições de endereço IP.

  • Se a política de bucket restringir o acesso por endereço IP, adicione todos os intervalos IPv4 e IPv6 publicados do Fastly à condição aws:SourceIp e mantenha-os atualizados. Consulte logs de CDN e listas de permissões de IP.

  • Os buckets que somente aceitam solicitações por meio de um ponto de extremidade VPC (por exemplo, uma política de bucket com uma condição aws:SourceVpce) não podem receber logs CDN.

  • Para detectar logs CDN perdidos, considere:

    • Eventos de dados do AWS CloudTrail ou logs de acesso ao servidor S3. Eles registram solicitações PutObject rejeitadas (status HTTP 403) dos endereços IP do Fastly.
    • Um alarme que é disparado quando nenhum objeto novo chega em aemcdn/ por mais tempo do que o esperado. Os arquivos são gravados a cada 5 minutos.

Armazenamento Azure Blob azureblob

kind: "LogForwarding"
version: "1"
data:
  azureBlob:
    default:
      enabled: true
      storageAccountName: "example_acc"
      container: "aem_logs"
      sasToken: "${{AZURE_BLOB_SAS_TOKEN}}

Um token SAS deve ser usado para autenticação. Ela deve ser criada na página Shared access signature, em vez de na página Shared access token, e deve ser configurada com estas configurações:

  • Serviços permitidos: o blob deve ser selecionado.
  • Recursos permitidos: o objeto e o contêiner devem ser selecionados.
  • Permissões permitidas: Ler, Gravar, Adicionar, Listar, Criar devem ser selecionadas.
  • Uma data/hora de início e expiração válidas.

Esta é uma captura de tela de um exemplo de configuração de token SAS:

Configuração de token SAS do Azure Blob

Se os registros pararem de ser entregues depois de antes funcionarem corretamente, verifique se o token SAS configurado ainda é válido, pois pode ter expirado.

Logs CDN do armazenamento de blobs da Azure azureblob-cdn

Cada um dos servidores de log distribuídos globalmente produzirá um novo arquivo a cada poucos segundos, na pasta aemcdn. Depois de criado, o arquivo não será mais anexado ao. O formato do nome do arquivo é AAAA-MM-DDThhss.sss-uniqueid.log. Por exemplo, 2024-03-04T10:00:00.000-WnFWYN9BpOUs2aOVn4ee.log.

Como exemplo, em algum momento:

aemcdn/
   2024-03-04T10:00:00.000-abc.log
   2024-03-04T10:00:00.000-def.log

E 30 segundos depois:

aemcdn/
   2024-03-04T10:00:00.000-abc.log
   2024-03-04T10:00:00.000-def.log
   2024-03-04T10:00:30.000-ghi.log
   2024-03-04T10:00:30.000-jkl.log
   2024-03-04T10:00:30.000-mno.log

Cada arquivo contém várias entradas de log json, cada uma em uma linha separada. Os formatos de entrada de log estão descritos em Logs para AEM as a Cloud Service, e cada entrada de log também inclui as propriedades adicionais mencionadas na seção Formatos de Entrada de Log abaixo.

Registros AEM do Azure Blob Storage azureblob-aem

Os logs do AEM (incluindo o Apache/Dispatcher) aparecem abaixo de uma pasta com a seguinte convenção de nomenclatura:

  • aemaccess
  • aemerror
  • aemrequest
  • aemdispatcher
  • aemhttpdaccess
  • aemhttpderror

Em cada pasta, um único arquivo será criado e anexado a. Os clientes são responsáveis pelo processamento e gerenciamento desse arquivo, de modo que ele não fique muito grande.

Consulte os formatos de entrada de log em Log para AEM as a Cloud Service. As entradas de log também incluirão as propriedades adicionais mencionadas na seção Formatos de Entrada de Log abaixo.

Datadog datadog

kind: "LogForwarding"
version: "1"
data:
  datadog:
    default:
      enabled: true
      host: "http-intake.logs.datadoghq.eu"
      token: "${{DATADOG_API_KEY}}"
      tags:
         tag1: value1
         tag2: value2

Considerações

  • Crie uma Chave de API sem nenhuma integração com um provedor de nuvem específico.
  • A propriedade das tags é opcional
  • Para logs AEM, a marca de origem do Datadog está definida como uma das seguintes opções: aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess ou aemhttpderror
  • Para logs CDN, a marca de origem do Datadog está definida como aemcdn
  • A etiqueta de serviço do Datadog está definida como adobeaemcloud, mas você pode substituí-la na seção de etiquetas
  • Se o pipeline de assimilação usar tags Datadog para determinar o índice apropriado para logs de encaminhamento, verifique se essas tags estão configuradas corretamente no arquivo YAML de encaminhamento de logs. As tags ausentes podem impedir a assimilação de logs bem-sucedida se o pipeline depender delas.

Elasticsearch e OpenSearch elastic

kind: "LogForwarding"
version: "1"
data:
  elasticsearch:
    default:
      enabled: true
      host: "example.com"
      user: "${{ELASTICSEARCH_USER}}"
      password: "${{ELASTICSEARCH_PASSWORD}}"
      pipeline: "ingest pipeline name"

Considerações

  • por padrão, a porta é 443. Opcionalmente, ele pode ser substituído por uma propriedade chamada port
  • Para credenciais, certifique-se de usar as credenciais de implantação, em vez das credenciais de conta. Estas são as credenciais geradas em uma tela que pode se parecer com esta imagem:

Credenciais de implantação elástica

  • Para logs AEM, index está definido como um de aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess ou aemhttpderror
  • A propriedade opcional do pipeline deve ser definida como o nome do pipeline de assimilação do Elasticsearch ou OpenSearch, que pode ser configurado para rotear a entrada de log para o índice apropriado. O tipo de Processador do pipeline deve ser definido como script e a linguagem de script deve ser definida como indolor. Este é um exemplo de trecho de script para rotear entradas de log em um índice, como aemaccess_dev_26_06_2024:
def envType = ctx.aem_env_type != null ? ctx.aem_env_type : 'unknown';
def sourceType = ctx._index;
def date = new SimpleDateFormat('dd_MM_yyyy').format(new Date());
ctx._index = sourceType + "_" + envType + "_" + date;

HTTPS https

kind: "LogForwarding"
version: "1"
data:
  https:
    default:
      enabled: true
      url: "https://example.com/aem_logs/aem"
      authHeaderName: "X-AEMaaCS-Log-Forwarding-Token"
      authHeaderValue: "${{HTTPS_LOG_FORWARDING_TOKEN}}"

Considerações

  • A cadeia de caracteres da URL deve incluir https:// ou a validação falhará.
  • O URL pode incluir uma porta. Por exemplo, https://example.com:8443/aem_logs/aem. Se nenhuma porta for incluída na string do URL, a porta 443 (a porta HTTPS padrão) será considerada.

Logs HTTPS CDN https-cdn

As solicitações da Web (POSTs) serão enviadas continuamente, com uma carga json que é uma matriz de entradas de log, com o formato de entrada de log descrito em Logon para AEM as a Cloud Service. Propriedades adicionais são mencionadas na seção Formatos de Entrada de Log abaixo.

Também existe uma propriedade chamada sourcetype, que é definida como o valor aemcdn.

NOTE
Antes de enviar a primeira entrada de log CDN, o servidor HTTP deve concluir com êxito um desafio único: uma solicitação enviada para o caminho /.well-known/fastly/logging/challenge deve responder com um asterisco * no corpo e código de status 200.

Logs HTTPS do AEM https-aem

Para logs do AEM (incluindo apache/dispatcher), as solicitações da Web (POSTs) serão enviadas continuamente, com uma carga json que é uma matriz de entradas de log, com os vários formatos de entrada de log, conforme descrito em Logs para o AEM as a Cloud Service. Propriedades adicionais são mencionadas na seção Formatos de Entrada de Log abaixo.

Também há uma propriedade chamada Source-Type, que é definida como um destes valores:

  • aemaccess
  • aemerror
  • aemrequest
  • aemdispatcher
  • aemhttpdaccess
  • aemhttpderror

API de log do New Relic newrelic-https

O encaminhamento de logs para o New Relic aproveita a API de log HTTPS do New Relic para assimilação. Os logs de CDN para o New Relic estão na versão beta. Para solicitar acesso, envie um email para aemcs-logforwarding-beta@adobe.com com a ID do seu programa. Consulte logs de CDN do Amazon S3, Dynatrace e New Relic (beta) para saber como habilitá-los.

  kind: "LogForwarding"
  version: "1"
  data:
    newRelic:
      default:
        enabled: true
        uri: "https://log-api.newrelic.com/log/v1"
        apiKey: "${{NR_API_KEY}}"

Para encaminhar logs do AEM e de CDN (logs de CDN na versão beta):

  kind: "LogForwarding"
  version: "1"
  data:
    newRelic:
      default:
        enabled: true
        uri: "https://log-api.newrelic.com/log/v1"
        apiKey: "${{NR_API_KEY}}"
      cdn:
        enabled: true

Para encaminhar somente logs CDN (na versão beta):

  kind: "LogForwarding"
  version: "1"
  data:
    newRelic:
      default:
        enabled: true
        uri: "https://log-api.newrelic.com/log/v1"
        apiKey: "${{NR_API_KEY}}"
      aem:
        enabled: false
      cdn:
        enabled: true
NOTE
O encaminhamento de logs para a New Relic só está disponível para contas da New Relic de propriedade do cliente.

Considerações

  • O New Relic fornece endpoints específicos da região com base no local em que sua conta do New Relic é provisionada. Defina uri como o ponto de extremidade da API de log para a região da sua conta, por exemplo https://log-api.newrelic.com/log/v1 para contas na região dos EUA. Consulte a documentação do New Relic para obter mais informações.
  • Para apiKey, use uma chave de licença da New Relic (tipo de chave INGEST - LICENSE) da conta que recebe os logs. A mesma chave é usada para logs do AEM e logs CDN.
  • Para logs AEM, o atributo source está definido como aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess ou aemhttpderror. Para logs CDN (beta), source está definido como aemcdn e cada registro carrega todas as propriedades de log CDN. Por exemplo, para consultar logs CDN: FROM Log SELECT * WHERE source = 'aemcdn' SINCE 1 hour ago.
  • Nas entradas de log CDN (beta) enviadas para o New Relic, timestamp é um número: a hora de início da solicitação em milissegundos desde a época do Unix. Outros destinos de log recebem timestamp como uma cadeia de caracteres ISO 8601.
  • Os logs CDN (beta) podem adicionar volume significativo à assimilação do New Relic. Consulte logs de CDN do Amazon S3, Dynatrace e New Relic (beta).

API de log do Dynatrace dynatrace-https

O encaminhamento de logs para o Dynatrace aproveita a API HTTPS do Dynatrace para assimilação. Os logs de CDN para o Dynatrace estão na versão beta. Para solicitar acesso, envie um email para aemcs-logforwarding-beta@adobe.com com a ID do seu programa. Consulte logs de CDN do Amazon S3, Dynatrace e New Relic (beta) para saber como habilitá-los.

O token requer o escopo Assimilar logs (logs.ingest). O mesmo token é usado para logs do AEM e logs CDN.

  kind: "LogForwarding"
  version: "1"
  data:
    dynatrace:
      default:
        enabled: true
        environmentId: "${{DYNATRACE_ENVID}}"
        token: "${{DYNATRACE_TOKEN}}"

Para encaminhar logs do AEM e de CDN (logs de CDN na versão beta):

  kind: "LogForwarding"
  version: "1"
  data:
    dynatrace:
      default:
        enabled: true
        environmentId: "${{DYNATRACE_ENVID}}"
        token: "${{DYNATRACE_TOKEN}}"
      cdn:
        enabled: true

Para encaminhar somente logs CDN (na versão beta):

  kind: "LogForwarding"
  version: "1"
  data:
    dynatrace:
      default:
        enabled: true
        environmentId: "${{DYNATRACE_ENVID}}"
        token: "${{DYNATRACE_TOKEN}}"
      aem:
        enabled: false
      cdn:
        enabled: true

Considerações

  • Somente os ambientes SaaS do Dynatrace são compatíveis. environmentId é a ID na URL do seu ambiente, https://<environmentId>.live.dynatrace.com. Use somente a ID, não um URL ou um nome de host: para logs CDN, ele não pode conter pontos. Os endpoints do Dynatrace Managed e do AtiveGate não são compatíveis.
  • Cada entrada de log inclui uma propriedade source. Para logs do AEM, é um dos seguintes: aemaccess, aemerror, aemrequest, aemdispatcher, aemhttpdaccess ou aemhttpderror. Para logs CDN (beta), é aemcdn.
  • Os logs CDN (beta) podem adicionar volume significativo à assimilação do Dynatrace. Consulte logs de CDN do Amazon S3, Dynatrace e New Relic (beta).

Encontrar logs de CDN no Dynatrace (beta) dynatrace-cdn

O Dynatrace armazena cada entrada de log CDN, como texto JSON, no content de um registro de log e usa o timestamp da entrada como o tempo de registro. As propriedades de log da CDN, como source, url e status, não são atributos de log separados. O mesmo se aplica aos logs do AEM encaminhados ao Dynatrace. Como resultado:

  • Os filtros no modo simples do visualizador de log clássico não funcionam nessas propriedades. Um filtro em um atributo que não existe é ignorado, portanto, todos os logs são retornados.
  • O log status desses registros mostra NONE, porque a propriedade CDN status é o código de status HTTP, não um nível de log.

Em vez disso, use o modo avançado (DQL). Para localizar logs CDN na última hora:

fetch logs, from: now() - 1h
| filter matchesPhrase(content, "aemcdn")

Para analisar as propriedades de log da CDN e mostrar algumas delas:

fetch logs, from: now() - 1h
| parse content, "JSON:cdn"
| filter cdn[source] == "aemcdn"
| fields timestamp, cdn[url], cdn[status], cdn[pop], cdn[cache], cdn[aem_tier]

Splunk splunk

kind: "LogForwarding"
version: "1"
data:
  splunk:
    default:
      enabled: true
      host: "splunk-host.example.com"
      token: "${{SPLUNK_TOKEN}}"
      index: "aemaacs"

Considerações

  • A porta padrão é 443. Opcionalmente, ele pode ser substituído por uma propriedade chamada port.
  • Dependendo do log específico, o campo sourcetype terá um dos seguintes valores: aemaccess, aemerror,
    aemrequest, aemdispatcher, aemhttpdaccess, aemhttpderror, aemcdn
  • Se os IPs necessários tiverem sido migrados e os registros ainda não estiverem sendo entregues, verifique se não há regras de firewall impondo a validação do token de Splunk. O Fastly executa uma etapa de validação inicial na qual um token do Splunk inválido é enviado intencionalmente. Se o firewall estiver definido para encerrar conexões com tokens inválidos do Splunk, o processo de validação falhará, impedindo que o Fastly entregue logs para a instância do Splunk.
NOTE
Ao migrar do encaminhamento de logs herdado para este modelo de autoatendimento, os valores do campo sourcetype enviados para o índice do Splunk podem ter sido alterados, portanto, ajuste-os adequadamente.

Lógica Sumo sumologic

Ao configurar a Lógica de sumô para assimilação de dados, você verá um “Endereço Source HTTP” que fornece o host, o URI do receptor e a chave privada em uma única string. Por exemplo:

https://collectors.de.sumologic.com/receiver/v1/http/ZaVnC...

Você precisará copiar a última seção da URL (sem a / anterior) e adicioná-la como uma Variável de ambiente secreto do CloudManager, conforme descrito na seção Configuração acima, e depois referenciar essa variável na sua configuração. Um exemplo é fornecido abaixo.

kind: "LogForwarding"
version: "1"
data:
  sumoLogic:
    default:
      enabled: true
      collectorURL: "https://collectors.de.sumologic.com/receiver/v1/http"
      privateKey: "${{SUMOLOGIC_PRIVATE_KEY}}"
      index: "aem-logs"
NOTE
O comportamento do campo index depende do tipo de log:
  • Logs do AEM (incluindo Apache/Dispatcher): roteado para a partição especificada por index, desde que você tenha uma assinatura do Sumo Logic Enterprise. As assinaturas não empresariais encaminham para a partição sumologic_default.
  • Logs da CDN: o campo index é ignorado, pois a indexação não tem suporte técnico para logs da CDN encaminhados ao Sumo Logic. Os logs CDN são sempre roteados para a partição sumologic_default.
Consulte a Documentação de Particionamento Lógico de Resumo para obter mais informações.

Logs CDN para Amazon S3, Dynatrace e New Relic (beta) cdn-opt-in

O encaminhamento de log da CDN para o Amazon S3, Dynatrace e New Relic está na versão beta. O encaminhamento de logs do AEM (incluindo o Apache/Dispatcher) para esses destinos não é afetado e não precisa de uma solicitação.

Para encaminhar logs CDN para um desses destinos, conclua as duas etapas:

  1. Solicitar acesso ao seu programa. Envie um email para aemcs-logforwarding-beta@adobe.com com a ID do programa e os destinos que deseja usar. O Adobe responde quando o acesso está ativado para o seu programa.
  2. Habilitar logs CDN para cada destino. Depois que o acesso estiver habilitado, defina enabled: true no bloco cdn do destino em sua configuração de Encaminhamento de Log e execute o pipeline de configuração. Veja o exemplo abaixo.

Ambas as etapas são necessárias:

  • O acesso por si só não encaminha nenhum log CDN. Para a maioria dos destinos de log, um bloco default habilitado encaminha os logs do AEM e os logs CDN. Para Amazon S3 (awsS3), Dynatrace (dynatrace) e New Relic (newRelic), os logs de CDN são encaminhados somente quando o bloco cdn define explicitamente enabled: true.
  • Se você definir cdn.enabled: true antes que o acesso seja habilitado para o seu programa, a configuração será implantada sem erros, mas nenhum log CDN será encaminhado para esses destinos.

O bloco cdn herda todas as outras propriedades do bloco default, incluindo as credenciais, portanto, enabled: true é a única propriedade que você precisa adicionar:

kind: "LogForwarding"
version: "1"
data:
  newRelic:
    default:
      enabled: true
      uri: "https://log-api.newrelic.com/log/v1"
      apiKey: "${{NR_API_KEY}}"
    cdn:
      enabled: true

Para um programa com acesso, a configuração funciona da seguinte maneira:

Configuração
Logs do AEM
Registros CDN para Amazon S3, Dynatrace, New Relic
Logs da CDN para outros destinos
Somente default.enabled: true
Encaminhado
Não encaminhado (até 26 de janeiro de 2027)
Encaminhado
default.enabled: true e cdn.enabled: true
Encaminhado
Encaminhado
Encaminhado
default.enabled: true e cdn.enabled: false
Encaminhado
Não encaminhado
Não encaminhado
default.enabled: true, aem.enabled: false e cdn.enabled: true
Não encaminhado
Encaminhado
Encaminhado

Assim como em outros destinos, as propriedades definidas no bloco cdn substituem os valores de default. Para encaminhar apenas logs CDN, defina aem.enabled: false, como na última linha.

Para interromper o encaminhamento de logs CDN, defina cdn.enabled: false e execute o pipeline de configuração. O encaminhamento de log da CDN para esse destino é interrompido quando a configuração é implantada. Os logs do AEM não são afetados.

NOTE
Por que os logs da CDN são aceitos para esses destinos
Muitas organizações configuraram o Amazon S3, o Dynatrace ou o New Relic para logs do AEM antes que o encaminhamento de logs do CDN estivesse disponível para elas. Os logs CDN contêm uma entrada para cada solicitação manipulada pela CDN, incluindo solicitações atendidas do cache CDN, portanto, geralmente são muito maiores do que os logs do AEM. Eles também são enviados de endereços IP diferentes dos logs do AEM (consulte Transporte e rede avançada). Exigir cdn.enabled: true por enquanto significa que as configurações existentes continuam encaminhando apenas logs do AEM, sem custos de assimilação ou tráfego inesperados, e oferece tempo para você decidir.
IMPORTANT
A solicitação de acesso e a aceitação são temporárias. A partir de terça-feira, 26 de janeiro de 2027, nenhuma solicitação de acesso será necessária e o Amazon S3, o Dynatrace e o New Relic seguirão a mesma regra de outros destinos: um bloco default habilitado também encaminha logs CDN. Para continuar encaminhando apenas logs do AEM para um desses destinos, defina cdn.enabled: false para ele. Você pode defini-la agora; ela tem o mesmo efeito antes e depois dessa data.

Antes de habilitar logs CDN, estime o volume adicional. Os fornecedores de registros que cobram por volume assimilado, como Dynatrace e New Relic, cobram pelos registros CDN da mesma forma que pelos registros AEM.

Para fornecer feedback sobre o beta, envie um email para aemcs-logforwarding-beta@adobe.com.

Formatos de entrada de log log-formats

Consulte Logs do AEM as a Cloud Service para obter o formato de cada respectivo tipo de log (logs CDN e logs do AEM, incluindo o Apache/Dispatcher). Alguns destinos de log adicionam ou alteram propriedades em entradas de log CDN, por exemplo, o formato de timestamp para New Relic. Consulte Entradas de log da CDN por destino de log.

Como os registros de vários programas e ambientes podem ser encaminhados para o mesmo destino de registro, além da saída descrita no artigo de registro, as seguintes propriedades serão incluídas em cada entrada de registro:

  • aem_env_id
  • aem_env_type
  • aem_program_id
  • aem_tier

Como exemplo, as propriedades podem ter os seguintes valores:

aem_env_id: 1242
aem_env_type: dev
aem_program_id: 12314
aem_tier: author

Migrando do Encaminhamento de Log Herdado legacy-migration

Antes de a configuração do encaminhamento de logs ser obtida por meio de um modelo de autoatendimento, os clientes eram solicitados a abrir tíquetes de suporte, onde a Adobe iniciaria a integração.

Os clientes que foram configurados dessa maneira pela Adobe são bem-vindos para se adaptarem ao modelo de autoatendimento de sua conveniência. Há vários motivos para fazer essa transição:

  • Um novo ambiente (por exemplo, um novo ambiente de desenvolvimento ou RDE) foi provisionado.
  • Alterações nas credenciais ou no ponto de extremidade existente do Splunk.
  • A Adobe configurou o encaminhamento de logs antes que os logs CDN estivessem disponíveis e você gostaria de receber logs CDN.
  • Uma decisão consciente de se adaptar proativamente ao modelo de autoatendimento para que sua organização tenha o conhecimento mesmo antes de uma alteração sensível ao tempo ser necessária.

Quando estiver pronto para migrar, basta configurar o arquivo YAML conforme descrito nas seções anteriores. Use o pipeline de configuração do Cloud Manager para implantar em cada um dos ambientes em que a configuração deve ser aplicada.

Recomenda-se, mas não é necessário, que uma configuração seja implantada em todos os ambientes para que todos estejam sob controle de autoatendimento. Caso contrário, você pode esquecer quais ambientes foram configurados pelo Adobe e quais foram configurados de maneira automatizada.

NOTE
Os valores do campo sourcetype enviados para o índice do Splunk podem ter sido alterados, portanto, ajuste de acordo.
Quando o encaminhamento de logs é implantado em um ambiente previamente configurado pelo suporte da Adobe, você pode receber logs duplicados por até algumas horas. Isso acabará sendo resolvido automaticamente.
recommendation-more-help
experience-manager-cloud-service-help-main-toc