Monitoramento de aplicações TypeScript com Appmetrics

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

O que é Appmetrics?

Appmetrics é uma biblioteca leve para monitoramento de desempenho de aplicações em TypeScript e JavaScript. Ela fornece aos desenvolvedores métricas prontas: tempo de resposta, carga de CPU, uso de memória, número de requisições ativas e velocidade do banco de dados. A biblioteca não requer infraestrutura complexa e pode ser implementada tanto em Express quanto em Nest.js ou Node.js puro.

Por que o monitoramento de aplicações TypeScript é necessário?

Aplicações TypeScript frequentemente rodam no lado do servidor (Node.js) ou em sistemas frontend complexos. Sem monitoramento, você corre o risco de perder um vazamento de memória, endpoints lentos ou uma queda repentina de desempenho. Appmetrics ajuda a:

  • Rastrear o tempo real de execução das requisições
  • Detectar gargalos no código
  • Registrar automaticamente métricas no Prometheus ou Grafana
  • Receber alertas em caso de anomalias

Instalação

Instale a biblioteca via npm ou yarn:

npm install @appmetrics/typescript-metrics

Para integração com Express, instale adicionalmente:

npm install @appmetrics/express-middleware

Funcionalidades principais

  1. Coleta de métricas de CPU e memória — coleta automática em tempo real.
  2. Métricas de requisições HTTP — tempo de resposta, códigos de status, número de requisições.
  3. Integração com sistemas populares — Prometheus, Grafana, Datadog.
  4. Métricas personalizadas — possibilidade de adicionar seus próprios contadores e histogramas.
  5. Tipagem — suporte completo a TypeScript com autocompletar.

Exemplo de código em TypeScript

import { MetricsCollector } from '@appmetrics/typescript-metrics';import express from 'express';

const app = express();const metrics = new MetricsCollector({ appName: 'my-app' });

// Middleware para coleta de métricas de requisiçõesapp.use((req, res, next) => { const end = metrics.startTimer('http_request'); res.on('finish', () => { end({ method: req.method, status: res.statusCode }); metrics.incrementCounter('http_requests_total'); }); next();});

app.get('/api/users', (req, res) => { res.json({ users: [] });});

// Endpoint para exportar métricas no formato Prometheusapp.get('/metrics', async (req, res) => { const data = await metrics.exportPrometheus(); res.set('Content-Type', 'text/plain'); res.send(data);});

app.listen(3000, () => console.log('Server started'));

Quando usar Appmetrics?

  • Servidores de produção — para controle contínuo da saúde da aplicação.
  • Arquitetura de microsserviços — para monitorar cada serviço individualmente.
  • Testes de carga — para coletar métricas durante testes de estresse.
  • Depuração — para encontrar vazamentos de memória ou funções lentas.

A biblioteca é adequada tanto para projetos pequenos quanto para sistemas enterprise com milhares de requisições por segundo.

Recommendations