Trench
Frigade · Programação
O Trench é infraestrutura de análise de código aberto e gratuita da Frigade que rastreia eventos em tempo real no ClickHouse e no Kafka, feita para rodar sem cookies.

Sobre Trench
What Is Trench
O Trench é um sistema de rastreamento de eventos que você mesmo hospeda e mantém sob a sua própria conta. Ele guarda o que as pessoas fazem dentro do seu aplicativo, como criar conta, concluir uma compra ou abrir uma funcionalidade, e depois deixa você consultar esses dados em tempo real com SQL ou com um endpoint REST. Por baixo, roda o Apache Kafka para absorver o fluxo de entrada e o ClickHouse para responder rápido às consultas.
A equipe da Frigade construiu a ferramenta para dar conta do próprio fluxo de eventos em escala e depois a publicou como código aberto. Isso importa se você já olhou a fatura de uma ferramenta de análise hospedada e se perguntou por que rastrear seus próprios usuários custa tanto. O Trench mira desenvolvedores que querem um rastreamento no estilo Segment sem enviar cada evento para os servidores de outra empresa.
Dois pontos definem o que você recebe. Primeiro, o Trench segue a API do Segment, então as chamadas track, identify e group que você já escreveu costumam funcionar só trocando o endpoint. Segundo, ele chega como uma única imagem Docker com Kafka e ClickHouse dentro, o que encurta a instalação, mas também significa que você administra um banco de dados de verdade. Reserve ao menos 4 GB de RAM e 4 núcleos de CPU para um nó de produção.
Getting Started
- Clone o repositório FrigadeHQ/trench e abra a pasta apps/trench.
- Copie o arquivo de ambiente de exemplo e suba a pilha com o Docker Compose, que inicia o Trench junto com Kafka e ClickHouse locais.
- Abra o servidor na porta 4000 e encontre suas chaves pública e privada no arquivo de ambiente.
- Envie um evento para o endpoint de events com um userId, um type como track e um objeto properties.
- Leia os dados pelo endpoint de events, ou execute comandos SQL pelo endpoint de queries.
Informações do produto
Uma visão rápida dos preços, das plataformas compatíveis e do desempenho de Trench.
Ideal para
Os usuários, tarefas e cenários em que esta ferramenta se encaixa melhor.
Usuários
- Desenvolvedores que querem rastreamento no estilo Segment sem fatura de hospedagem
- Equipes com regras rígidas de dados
- Engenheiros que já usam Kafka
Tarefas
- Registrar eventos de produto
- Consultar comportamento com SQL
- Enviar eventos para outras ferramentas
Cenários
- Montar um painel de análise de produto
- Deixar quem revisa conformidade tranquilo
- Prototipar um fluxo com um modelo de linguagem que precisa de contexto do usuário
Principais recursos
API de rastreamento compatível com o Segment
O Trench segue a API do Segment para as chamadas track, identify e group. Se o seu aplicativo já envia eventos nesse formato, dá para apontá-lo para um endpoint do Trench e manter o código atual. Essa compatibilidade é o principal motivo de uma migração levar algumas horas em vez de exigir uma reescrita.
Implantação com uma única imagem Docker
O sistema inteiro chega como uma imagem Docker pronta para produção com Kafka e ClickHouse incluídos. Você roda um comando do Compose e tem uma pilha funcionando, em vez de ligar três serviços na mão. O preço é o hardware: conte com ao menos 4 GB de RAM e 4 núcleos para um nó de produção.
Desempenho em tempo real no Kafka e no ClickHouse
O Kafka absorve o fluxo de entrada e o ClickHouse responde às consultas. Em um único nó, o fluxo dá conta de milhares de eventos por segundo, e essas mesmas duas ferramentas rastreiam trilhões de eventos para empresas como Airbnb e Spotify. Para um desenvolvedor sozinho ou uma equipe pequena, um nó aguenta bastante antes de você precisar escalar.
Consultas com SQL e REST
Você não precisa de uma ferramenta de BI separada para ler os dados. O endpoint de events devolve os eventos guardados em JSON, e o de queries executa SQL direto contra o armazenamento do ClickHouse. Contar usuários ativos por dia ou agrupar eventos por propriedade é um comando curto, não um trabalho de exportação.
Destinos por webhook
Webhooks com limite de ritmo empurram os eventos novos para outros serviços. Isso deixa o Trench no meio da sua pilha, capturando eventos e repassando-os para um CRM, um armazenamento de dados ou uma ferramenta de alertas. Poupa você de escrever um relé próprio só para mover dados entre sistemas.
Prós e contras
Prós
- Código aberto sob licença MIT, então o código é seu para ler e alterar.
- Grátis para auto-hospedar e sem limites de uso, o que evita pagar por evento.
- Segue a API do Segment, então o código de rastreamento que você já tem costuma continuar servindo.
- Os dados ficam na sua própria instância do ClickHouse, o que ajuda com a LGPD.
- Uma única imagem Docker reúne Kafka e ClickHouse e corta etapas da instalação.
Contras
- Você administra uma pilha de Kafka e ClickHouse, então um nó de produção pede ao menos 4 GB de RAM e 4 núcleos.
- Sem painéis incluídos: você conecta o Grafana ou constrói sua própria interface para ver gráficos.
- Cuidar disso sozinho significa lidar com atualizações, backups e disponibilidade.
- Existe a opção de Cloud gerenciado, mas ela não publica um preço fixo, então é preciso pedir orçamento.
Perguntas frequentes
O Trench rastreia eventos dentro do seu próprio produto e os guarda para análise em tempo real. Você envia eventos por uma API que segue a especificação do Segment e depois os consulta com SQL ou com uma chamada REST para ver o que os usuários fazem.
Conteúdo relacionado
Explore ferramentas, skills e artigos relacionados a Trench.
Alternativas a Trench
Base Code
Base44 (Wix) · Programação · ProdutividadeO Base Code é um ambiente de desenvolvimento em nuvem compartilhado da Base44. O time descreve mudanças em um repositório do GitHub pelo chat, confere tudo na prévia e envia o resultado como pull request.
Google EmbeddingGemma 2
Google DeepMind · Escrita · Imagem · ProgramaçãoGoogle EmbeddingGemma 2 é um modelo aberto de 740 milhões de parâmetros que transforma texto, código, imagens, áudio e quadros de vídeo em vetores de um único espaço de 768 dimensões, rodando em celulares e notebooks.
GitGlow
GitGlow · Programação · ProdutividadeO GitGlow é um cliente Git de desktop que coloca seu código e as mudanças dos seus agentes de IA na mesma revisão, para você saber o que vai sair da máquina antes de publicar.
