Elastic Common Schema e OpenTelemetry — um caminho para melhor observabilidade e segurança sem se prender a um fornecedor

ecs-otel-announcement-1.jpeg

Na KubeCon Europe, foi anunciado que o Elastic Common Schema (ECS) foi aceito pelo OpenTelemetry (OTel) como uma contribuição para o projeto. O objetivo é alcançar a convergência do ECS e das Semantic Conventions (SemConv) do OpenTelemetry em um único esquema aberto, mantido pelo OpenTelemetry. Estas perguntas frequentes detalham a contribuição do Elastic Common Schema para o OpenTelemetry, como isso ajudará a direcionar o setor para um esquema comum e seu impacto na observabilidade e na segurança.

O que está sendo anunciado? 

A Elastic está contribuindo com seu projeto open source, o Elastic Common Schema (ECS), para o projeto OpenTelemetry sob a Cloud Native Computing Foundation (CNCF) para ajudar na convergência para um esquema comum de dados de observabilidade e segurança. Um esquema comum ajuda a normalizar os dados para permitir melhor análise, visualização e correlação desses dados em qualquer plataforma de observabilidade ou segurança. A adoção do ECS pelo OpenTelemetry beneficia a comunidade de usuários do OTel com um esquema comum maduro e comprovado para métricas, logs, traces, recursos (hosts, containers etc.) e eventos de segurança. 

O que os usuários da Elastic precisam saber?

A Elastic preservará os investimentos de nossos usuários no ECS. A evolução contínua do ECS dentro do OpenTelemetry dará aos usuários do ECS um caminho claro para adotar o que esperamos ser o padrão mais largamente usado do setor para convenções semânticas.

A Elastic participará e colaborará estreitamente com a comunidade do OTel para mesclar adequadamente o ECS e as Semantic Conventions do OpenTelemetry ao longo do tempo. A Elastic continuará a oferecer suporte para os dados dos usuários no formato do ECS atual, embora a evolução do esquema ocorra no esquema recém-mesclado. Os usuários do Elastic terão a opção de continuar ingerindo e usando o formato do ECS atual (“congelado”) ou migrar para o novo esquema.

A Elastic fornecerá orientação e ferramentas para que os usuários que decidirem migrar para o novo esquema possam fazê-lo de forma simples.

Por que a Elastic está contribuindo com o ECS para o OTel?

A convergência das Semantic Conventions (SemConv) do OpenTelemetry com o Elastic Common Schema fornece um esquema de nomenclatura comum para recursos, métricas, logs, traces, eventos de segurança e eventos de auditoria, que podem ser usados em bases de código, bibliotecas e plataformas. Essa convergência do ECS com as Semantic Conventions do OTel vai:

  • Alinhar os esforços em torno de um único padrão pronto para ampla adoção pelos produtores de dados de eventos
  • Gerar melhor visibilidade e análise de causa raiz para as operações
  • Permitir que os fornecedores e a comunidade se concentrem em recursos de observabilidade e segurança mais avançados em vez de lidar com tarefas de transformação de dados
  • Facilitar a análise interorganizacional em vários tipos de sinais, inclusive entre segurança e observabilidade
  • Aumentar a adoção do OpenTelemetry e a evolução e a convergência contínuas dos domínios de observabilidade e segurança

Por que um esquema comum é necessário para as organizações?

Muitas vezes, as organizações têm dificuldade para entender quando um problema ocorreu (visibilidade) e por que ele aconteceu (análise da causa raiz). Esse desafio operacional se deve aos dados que ficam isolados e estruturados em diferentes esquemas. As organizações gastam mais tempo em transformações de dados desnecessárias do que em compreender o problema, analisar a causa raiz ou otimizar as operações.

Com dados estruturados de acordo com um esquema comum, as equipes de operações poderão se concentrar em reconhecer, resolver e prevenir problemas, além de reduzir o tempo médio para a resolução (MTTR). As operações também podem reduzir os custos por não terem dados duplicados e não terem de processar dados para normalização. 

O que é um exemplo ilustrativo de um esquema comum?

Um exemplo ilustrativo simples é quando o endereço IP de um cliente é enviado de várias fontes que monitoram ou gerenciam a telemetria sobre o cliente. A plataforma de observabilidade recebe essa informação em vários formatos:

src:10.42.42.42
client_ip:10.42.42.42 
apache2.access.remote_ip: 10.42.42.42 
context.user.ip:10.42.42.42 
src_ip:10.42.42.42

Ter um endereço IP representado de várias maneiras gera complexidades na análise de possíveis problemas ou até mesmo na identificação deles. Sem uma semântica clara para os dados observados e um esquema comum, as soluções de observabilidade têm dificuldade para correlacionar, analisar e identificar automaticamente a causa raiz a partir dos dados. Consequentemente, o pessoal de operações (SREs, DevOps etc.) precisa entender essas várias definições, saber como encontrá-las e então normalizar manualmente os dados para análise.

Com um esquema comum, todos os dados recebidos estão em um formato padronizado. Tomando o exemplo acima, cada uma das fontes identificaria o endereço IP do cliente da mesma forma:

source.ip:10.42.42.42

As soluções de observabilidade e segurança agora podem aproveitar um esquema de dados consistentemente definido para automação da correlação e da análise de dados. O pessoal de operações agora passa mais tempo entendendo o problema, encontrando a causa raiz e otimizando as operações em vez de gastar tempo em transformações de dados desnecessárias.

O que é o Elastic Common Schema (ECS)?

O Elastic Common Schema (ECS), uma especificação open source (Apache 2.0), é desenvolvido com o suporte da comunidade de usuários da Elastic para definir um conjunto comum de campos a serem usados ao armazenar dados de eventos no Elasticsearch. O objetivo do ECS é capacitar e incentivar os usuários do Elasticsearch a normalizar seus dados de eventos, para que possam analisar, visualizar e correlacionar melhor os dados representados em seus eventos. O ECS é a base das soluções Elastic Observability e Elastic Security, e é um esquema comprovado e largamente adotado que evoluiu e cresceu ao longo dos anos desde seu princípio em 2019.

O que são o OpenTelemetry e as Semantic Conventions do OpenTelemetry?

OpenTelemetry (OTel) é um projeto open source que fornece um acervo de especificações, ferramentas, APIs e SDKs que podem ser usados para gerar, coletar, processar e exportar dados de telemetria (métricas, logs e traces) com o objetivo de entender o desempenho e o comportamento do software. Ele tornou-se o segundo projeto de mais alta velocidade no ecossistema da CNCF.

As Semantic Conventions (SemConv) do OpenTelemetry especificam nomes comuns para diferentes tipos de operações e dados. O benefício de usar o SemConv do OpenTelemetry está em seguir um esquema de nomenclatura comum que pode ser padronizado em bases de código, bibliotecas e plataformas para os usuários finais do OTel. Além disso, outro grande benefício é a dissociação da semântica específica do fornecedor. Assim, com o SemConv do OpenTelemetry, os usuários de dados resolvem o problema de ficarem presos a um determinado fornecedor. Dessa forma, eles podem transitar facilmente entre as soluções de observabilidade (e as soluções de segurança com a contribuição do ECS) sem a necessidade de adaptar sua coleta de dados.

Como a contribuição do ECS ajuda o OpenTelemetry?

A maior necessidade do OpenTelemetry é acelerar a definição do esquema para descrever logs e eventos de segurança. Os colaboradores do ECS já definiram um conjunto unificado e bem aceito de convenções semânticas de logging, que podem ser adotadas no OTel. O ECS é largamente usado para estruturar logs consumidos em casos de uso de observabilidade e segurança.

A combinação acelerará a integração dos logs criados pelos fornecedores e dos logs de componentes do OTel (por exemplo, receptores e processadores de logs do OTel Collector). O objetivo é definir convenções semânticas independentes de fornecedor para os tipos de sistemas mais populares e oferecer suporte para componentes open source ou criados por fornecedores (por exemplo, logs de acesso HTTP, logs de rede, logs de acesso/autenticação do sistema), estendendo a correlação do OTel com esses novos sinais. Os usuários também se beneficiarão com o uso de integrações de log prontas que serão totalmente reconhecidas por produtos e serviços de observabilidade e segurança compatíveis com o OTel. 

A maturidade do ECS for Security é uma grande oportunidade para melhorar a utilidade dos dados coletados com o OpenTelemetry para casos de uso de segurança. A incorporação do ECS permitirá que os produtores do OTel estruturem eventos de segurança.

Haverá alguma alteração no licenciamento do ECS?

Não haverá nenhuma alteração no licenciamento do ECS. O ECS é licenciado pelo Apache 2.0, assim como o OpenTelemetry.

O Elastic é compatível com o OpenTelemetry hoje?

O Elastic é compatível com o OTel nativamente. Os usuários do Elastic podem enviar dados do OTel diretamente das aplicações ou por meio do OTel Collector para o Elastic APM, que processa tanto o SemConv quanto o ECS. Com esse suporte nativo, todas as funcionalidades do Elastic APM estão disponíveis com o OTel. Consulte a documentação da Elastic para saber mais sobre a integração do OTel.

microsserviços otel elastic

Onde posso saber mais sobre o ECS e o suporte da Elastic para o OpenTelemetry?

Encontre informações adicionais e documentação sobre o suporte da Elastic e as integrações para o OpenTelemetry abaixo: