Plataforma de Observabilidade + Auto-Remediação
Orchestrix combina observabilidade (como Datadog) com automação de workflows (como Temporal) para criar uma plataforma unificada de monitoramento e resposta automática a incidentes.
┌─────────────────────────────────────────────────────────────────┐
│ ORCHESTRIX │
├─────────────────────┬───────────────────┬───────────────────────┤
│ OBSERVABILIDADE │ DETECÇÃO │ AUTOMAÇÃO │
├─────────────────────┼───────────────────┼───────────────────────┤
│ • Métricas │ • Regras/Alertas │ • Workflows Temporal │
│ • Logs │ • Anomalias │ • Auto-remediação │
│ • Traces │ • Thresholds │ • Runbooks automáticos│
│ • Events │ • ML/Patterns │ • Notificações │
└─────────────────────┴───────────────────┴───────────────────────┘
▲ │ │
│ ▼ ▼
[Agents] [Alert Engine] [Temporal Workers]
| Produto | Foco | Limitação |
|---|---|---|
| Datadog | Observabilidade | Automação limitada |
| PagerDuty | Alertas + incident response | Sem observabilidade nativa |
| Shoreline.io | Auto-remediação | Focado apenas em remediation |
| StackStorm | Event-driven automation | Sem observabilidade |
| Rundeck | Runbook automation | Manual, não reativo |
Orchestrix = Observabilidade + Detecção + Automação em uma plataforma integrada.
orchestrix/
├── orchestrix-api/ # API REST (Go + Chi)
├── orchestrix-bff/ # Backend for Frontend (TypeScript)
├── orchestrix-web/ # Frontend (React)
└── orchestrix-worker/ # Temporal Workers (Go)
- Backend: Go, Chi, sqlc
- Workflow Engine: Temporal
- Auth: Keycloak (OIDC)
- Database: PostgreSQL (RLS multi-tenant)
- Frontend: React, TypeScript
- Infra: Docker, Kubernetes-ready
- API RESTful com CRUD de workflows e execuções
- Worker Temporal com activities (Validate, Process, Notify)
- Autenticação OIDC com Keycloak
- Multi-tenancy com Row-Level Security
- Execução async com callback de status
- Estrutura de Alerts e Audit Logs
- BFF estruturado (TypeScript)
- Frontend base (React)
- Conectar alertas com execução automática de workflows
- Regras configuráveis (threshold, pattern matching)
- Webhook para receber eventos externos
- Endpoint para receber métricas (Prometheus format)
- Endpoint para receber logs (structured JSON)
- Endpoint para receber traces (OpenTelemetry)
- Storage time-series (InfluxDB ou ClickHouse)
- Parser de JSON definition para steps dinâmicos
- Activities reutilizáveis:
- HTTP Request
- SSH Command
- Kubernetes (scale, restart)
- AWS/GCP/Azure actions
- Database queries
- Condicionais e loops no workflow
- Variables e templating
- Cloud Providers (AWS, GCP, Azure)
- Kubernetes API
- Messaging (Slack, Teams, Discord)
- Incident Management (PagerDuty, Opsgenie)
- Databases (PostgreSQL, MySQL, Redis)
- Dashboards customizáveis
- Correlação de métricas/logs/traces
- Anomaly detection (ML-based)
- Service maps e dependency graphs
- SSO avançado (SAML, LDAP)
- RBAC granular
- Compliance reports
- Data retention policies
- High availability setup
- Ingestão: Agent envia métrica
cpu_usage = 95% - Detecção: Alert rule detecta
cpu_usage > 90% - Automação: Workflow executa:
- Notify Slack: "High CPU detected"
- Scale up Kubernetes deployment
- Wait 5 minutes
- Verify metrics normalized
- Notify: "Issue resolved"
- Ingestão: App envia log
ERROR: Database connection timeout - Detecção: Pattern matching identifica erro de DB
- Automação: Workflow executa:
- Check database health
- Restart connection pool
- If still failing: failover to replica
- Create incident ticket
- Notify on-call engineer
# Clone
git clone https://github.com/orchestrix/orchestrix.git
# Start infrastructure
docker-compose up -d
# Run API
cd orchestrix-api && go run cmd/api/main.go
# Run Worker
cd orchestrix-api && go run cmd/worker/main.goMIT