Pular para conteúdo

Usando ElasticSearch com Kibana

ElasticSearch

É um programa gratuito para buscar e analisar dados gigantes em tempo real. Pode ser usado para pesquisar textos, monitorar logs e mais. É escalável e muito usado para aplicações de busca e análise de dados.

Kibana

É uma plataforma de análise e visualização de dados de código aberto que funciona em conjunto com o Elasticsearch. Ele permite criar gráficos, tabelas, mapas e dashboards interativos para ajudar a entender e explorar dados de forma mais fácil e intuitiva. É amplamente utilizado para monitorar e analisar dados em tempo real, para investigar problemas em logs de aplicativos e para obter insights em grandes conjuntos de dados.

Instalação

Python

pip install elastic-apm

O Core está usando a versão elastic-apm==6.15.1

Django

Crie um arquivo chamado elastic.py na pasta base e adicione o seguinte conteúdo substituindo nome_do_projeto:

Caminho: projeto/base/elastic.py

from decouple import config

APP_ID = "nome_do_projeto"

ELASTIC_APM = {
    "SERVICE_NAME": "nome_do_projeto",
    "SERVER_URL": config("ELASTIC_APM_SERVER_URL"),
    "DEBUG": config("DEBUG", default=False, cast=bool),
    "ENVIRONMENT": config("ENVIRONMENT", default="desenvolvimento"),
}

Adicione a importação do arquivo criado, o Middleware e o APP no arquivo settings.py:

if DEBUG is False:
    ...

    from .elastic import ELASTIC_APM

    INSTALLED_APPS.append("elasticapm.contrib.django")
    MIDDLEWARE.append("elasticapm.contrib.django.middleware.TracingMiddleware")

Utilização por padrão dentro do bloco onde o Debug é falso para ser usado apenas em ambientes de produção e homologação.

Variáveis de ambiente (.env)

Adicione as seguintes variáveis de ambiente no arquivo .env:

ELASTIC_APM_SERVER_URL=http://localhost:8200
ENVIRONMENT=desenvolvimento

Configure o nome do ambiente de acordo com o que está sendo usado.