62 lines
2.0 KiB
Markdown
62 lines
2.0 KiB
Markdown
---
|
|
type: Entity
|
|
layer: wiki
|
|
tags: [stack, dashdescomplicar, infra, monitorizacao, gemini, telemetria]
|
|
title: "Monitorizacao-Gemini"
|
|
---
|
|
|
|
# Monitorizacao-Gemini
|
|
|
|
Sistema de telemetria para hooks do Gemini CLI. Recolhe métricas de tool calls do Gemini e escreve no mesmo ficheiro JSONL usado pelo Claude Code para métricas unificadas.
|
|
|
|
## Responsabilidades
|
|
|
|
- **Hook AfterTool**: Captura tool_name, session_id, success/error, duration
|
|
- **Formato Unificado**: Escreve em `~/.claude-work/tool-invocations.jsonl` com campo `engine: gemini`
|
|
- **Pré-Telemetria**: Script `gemini-pre-telemetry.py` regista timestamp de início para cálculo de duração
|
|
- **Health Check**: `gemini-health.sh` verifica conectividade do Gemini CLI
|
|
|
|
## Stack
|
|
|
|
- **Python 3**: Scripts de hook (piped via stdin/stdout do Gemini CLI)
|
|
- **Formato**: JSONL (compatível com Claude Code)
|
|
- **Ficheiro**: `~/.claude-work/tool-invocations.jsonl`
|
|
|
|
## Scripts
|
|
|
|
| Script | Função | Trigger |
|
|
|---|---|---|
|
|
| `gemini-telemetry.py` (2.3KB) | Hook AfterTool — captura e regista métricas | Gemini CLI after tool call |
|
|
| `gemini-pre-telemetry.py` (1.0KB) | Hook BeforeTool — regista timestamp início | Gemini CLI before tool call |
|
|
| `gemini-health.sh` (1.0KB) | Health check conectividade Gemini | Manual/agendado |
|
|
|
|
## Formato de Log
|
|
|
|
```json
|
|
{
|
|
"ts": "2026-06-30T12:00:00Z",
|
|
"session": "<session_id>",
|
|
"tool_name": "read_file",
|
|
"success": true,
|
|
"error": "",
|
|
"duration": 1.23,
|
|
"engine": "gemini"
|
|
}
|
|
```
|
|
|
|
## Localizações
|
|
|
|
- **Scripts**: `Dev/DashDescomplicar/monitorizacao/` (3 ficheiros)
|
|
- **Output**: `~/.claude-work/tool-invocations.jsonl`
|
|
- **Temp**: `~/.gemini/tmp/telemetry/<session_id>.start`
|
|
|
|
## Dependências
|
|
|
|
- **Gemini CLI**: Pipe stdin/stdout para hooks Python
|
|
- **Sistema de Ficheiros**: `~/.claude-work/`, `~/.gemini/tmp/`
|
|
|
|
## Fornece a
|
|
|
|
- **Observabilidade-Sessions**: Dados de telemetria Gemini unificados com Claude
|
|
- **Sistema IA**: Métricas cross-engine (Claude + Gemini + Hermes + OpenCode)
|