# Documentación de ghchronicle > ghchronicle es una herramienta de código abierto que recoge todas las métricas que GitHub expone sobre una cuenta y guarda cada una con la fecha en que ocurrió. Este es el índice del sitio de documentación de ghchronicle. Cada entrada enlaza una página y lleva la descripción de esa página. El código, las incidencias y las publicaciones están en https://github.com/jmrplens/ghchronicle. Cada página de esta lista se sirve también como markdown en su propia ruta con `index.md` al final, que es la forma más barata de leer una página como texto. Portada: [ghchronicle](https://docs.jmrp.io/ghchronicle/es/): ghchronicle es una herramienta de código abierto que recoge todas las métricas que GitHub expone sobre una cuenta y guarda cada una con la fecha en que ocurrió. ## Empezar aquí - [Qué es](https://docs.jmrp.io/ghchronicle/es/start/): Qué recoge ghchronicle de GitHub y el problema que viene a resolver: un tráfico que dura catorce días y un feed de eventos de trescientos eventos y treinta días. - [Inicio rápido](https://docs.jmrp.io/ghchronicle/es/start/quickstart/): Instalar ghchronicle, apuntarlo a una base de datos y lanzar la primera pasada sobre una cuenta de GitHub, y qué hace esa primera pasada que las siguientes no hacen. - [El token](https://docs.jmrp.io/ghchronicle/es/start/token/): Qué familias de ghchronicle compra cada permiso del token de GitHub, y por qué el GITHUB_TOKEN automático de un workflow no basta. - [Comparado con las alternativas](https://docs.jmrp.io/ghchronicle/es/start/compared/): ghchronicle junto a GitHub Insights, repohistory, github-repo-stats, star-history y los exportadores de Prometheus: qué guarda cada uno, cuánto y dónde. - [Respuestas cortas](https://docs.jmrp.io/ghchronicle/es/start/questions/): Doce preguntas sobre guardar la historia de GitHub con ghchronicle: tráfico más allá de 14 días, estrellas, relleno, Prometheus, organizaciones y coste. ## Instalación - [Formas de instalar](https://docs.jmrp.io/ghchronicle/es/install/): Formas de instalar ghchronicle: una página por sistema operativo, cinco maneras de poner el binario en marcha, y para qué sirve cada una. - [Linux](https://docs.jmrp.io/ghchronicle/es/install/linux/): El camino completo en Linux: el archivo correcto, la firma, el PATH, un servicio y compilarlo tú mismo. - [macOS](https://docs.jmrp.io/ghchronicle/es/install/macos/): El camino completo en macOS: el archivo darwin, la cuarentena, un agente o demonio de launchd y compilarlo tú mismo. - [Windows](https://docs.jmrp.io/ghchronicle/es/install/windows/): El camino completo en Windows: el zip, PowerShell y cmd, una tarea programada y lo que de verdad cambia allí. - [systemd](https://docs.jmrp.io/ghchronicle/es/install/systemd/): Una unidad blindada para el único proceso de la máquina que guarda un token de GitHub, y para qué sirve cada restricción. - [Docker](https://docs.jmrp.io/ghchronicle/es/install/docker/): ghchronicle en Docker: la imagen distroless, qué hay que montar con escritura y un compose junto a InfluxDB. - [GitHub Actions](https://docs.jmrp.io/ghchronicle/es/install/actions/): ghchronicle como GitHub Action: la Action compuesta, sus cuatro modos y las dos cosas que un runner alojado no conserva. - [Actualizar](https://docs.jmrp.io/ghchronicle/es/install/upgrading/): Cómo son las primeras horas tras actualizar de la 2.5.x a la 2.6.x, cada cosa una sola vez y a propósito, y qué cambia la 2.6.1 en un almacén escrito antes que ella. ## Configuración - [El fichero](https://docs.jmrp.io/ghchronicle/es/configuration/): La configuración de ghchronicle: un fichero YAML, sus credenciales, direcciones y rutas expandibles desde el entorno, y para qué sirve cada bloque de primer nivel. - [Generar la configuración](https://docs.jmrp.io/ghchronicle/es/configuration/builder/): Un formulario que escribe el config.yaml de una ejecución normal y el paso de workflow de la Action, a partir de la lista de ajustes del propio binario. - [Objetivos](https://docs.jmrp.io/ghchronicle/es/configuration/targets/): Qué repositorios toca una pasada, y por qué los forks y los archivados quedan fuera por omisión. - [Cadencias](https://docs.jmrp.io/ghchronicle/es/configuration/cadences/): Las tres capas del bloque every, la cadencia interna de cada familia, el aviso cuando una configuración la acelera, y el heartbeat. - [Registro](https://docs.jmrp.io/ghchronicle/es/configuration/logging/): Nivel, formato, el fichero rotatorio que nunca sustituye a la salida de error, y las dos líneas que merecen alerta. ## Cómo funciona - [La pasada](https://docs.jmrp.io/ghchronicle/es/how/): Qué hace una pasada de ghchronicle por la API de GitHub, en qué orden, y por qué cada familia de métricas tiene su propia cadencia. - [La fecha del punto](https://docs.jmrp.io/ghchronicle/es/how/dating/): Cada punto lleva el momento en que ocurrió la cosa, y esa única regla decide qué puede responder todo el proyecto. - [Relleno histórico](https://docs.jmrp.io/ghchronicle/es/how/backfill/): Un recorrido deliberado hasta el final de cada superficie, hasta dónde llega, y las tres cosas que ningún relleno alcanza. ## Colectores - [Qué se recoge](https://docs.jmrp.io/ghchronicle/es/collectors/): Las treinta y cuatro familias de métricas de GitHub que recoge ghchronicle, qué le pide cada una a la API y por qué existe cada una. - [Medidas](https://docs.jmrp.io/ghchronicle/es/collectors/measurements/): Cada medida que ghchronicle escribe a partir de la API de GitHub, sus etiquetas, sus campos y cómo se fecha cada una. ## Destinos - [Elegir almacén](https://docs.jmrp.io/ghchronicle/es/sinks/): Dónde guardar las métricas de GitHub: once almacenes, qué puede y qué no puede responder cada uno, y la propiedad que decide entre ellos. - [InfluxDB](https://docs.jmrp.io/ghchronicle/es/sinks/influxdb/): El almacén de referencia para la historia fechada, por qué volver a recoger converge, y el único error de escritura que conviene reconocer. - [Prometheus](https://docs.jmrp.io/ghchronicle/es/sinks/prometheus/): Métricas de GitHub en Prometheus: un exportador, no un emisor, y qué le hace a cada medida la reducción a valores actuales. - [OpenTelemetry](https://docs.jmrp.io/ghchronicle/es/sinks/otlp/): Enviar métricas de GitHub a un collector de OpenTelemetry o a Prometheus: OTLP sobre HTTP con codificación JSON, y por qué raw vale false por omisión. - [PostgreSQL](https://docs.jmrp.io/ghchronicle/es/sinks/postgres/): Las dos maneras de llegar a PostgreSQL, sentencias INSERT que se pasan a psql y un destino que conecta, el esquema que declaran los dos y por qué la cláusula de conflicto actualiza en vez de no hacer nada. - [Graphite](https://docs.jmrp.io/ghchronicle/es/sinks/graphite/): Enviar métricas de GitHub a Graphite: el protocolo de texto plano sobre TCP, y la ruta métrica exacta, que es el contrato del dashboard. - [Elasticsearch](https://docs.jmrp.io/ghchronicle/es/sinks/elasticsearch/): La API bulk, un índice por medida, y un id de documento que hace que una reescritura reemplace en vez de duplicar. - [Loki](https://docs.jmrp.io/ghchronicle/es/sinks/loki/): Las veintidós medidas que son eventos y no números, y el horizonte de antigüedad que evita que se rechace un envío. - [Telegraf](https://docs.jmrp.io/ghchronicle/es/sinks/telegraf/): Enviar métricas de GitHub a través de Telegraf: line protocol enviado a http_listener_v2, y la razón de que esto sea un destino en vez de cien. - [Fichero y stdout](https://docs.jmrp.io/ghchronicle/es/sinks/file/): Un fichero rotatorio para un agente de envío que ya tengas, el búfer duradero más simple que hay, y line protocol por la salida estándar. ## Dashboards - [Importar](https://docs.jmrp.io/ghchronicle/es/dashboards/): Cinco dashboards de Grafana generados para las métricas de GitHub, uno por almacén, y cómo importar cada uno. - [Qué muestran](https://docs.jmrp.io/ghchronicle/es/dashboards/panels/): Las diecisiete secciones y sus ciento cincuenta y cuatro paneles, una captura de cada una, y qué cambia cuando el almacén no puede responder. ## La tarjeta - [Resumen](https://docs.jmrp.io/ghchronicle/es/card/): La tarjeta de ghchronicle: un SVG autocontenido de la actividad en GitHub para un README de perfil, dibujado con los mismos puntos que reciben las bases de datos. - [Diseños](https://docs.jmrp.io/ghchronicle/es/card/layouts/): Trece diseños en dos familias visuales, con lo que dibuja cada uno por omisión, cuáles se animan y cuáles pueden seguir moviéndose. ## Uso de la API - [Límites de la API](https://docs.jmrp.io/ghchronicle/es/api/): GitHub tiene quince presupuestos independientes; aquí importan tres, y el freno se escala a cada uno. - [Coste de una pasada](https://docs.jmrp.io/ghchronicle/es/api/cost/): El precio medido de una pasada, por familia, y qué familias alargar cuando el presupuesto aprieta. - [Lo que GitHub no da](https://docs.jmrp.io/ghchronicle/es/api/limits/): Los endpoints que se ha verificado que no funcionan en una cuenta personal, escritos para que nadie los vuelva a descubrir. ## Referencia - [La línea de órdenes](https://docs.jmrp.io/ghchronicle/es/reference/cli/): La línea de órdenes de ghchronicle: las opciones, qué hace cada una y cuáles imprimen algo y salen. - [Resolución de problemas](https://docs.jmrp.io/ghchronicle/es/reference/troubleshooting/): Los mensajes que parecen errores y no lo son, los que sí lo son, y los datos que parecen mal y no lo están. - [Historial de versiones](https://docs.jmrp.io/ghchronicle/es/reference/changelog/): La versión actual de ghchronicle y su fecha, leídas al compilar de VERSION y CHANGELOG.md, lo que recoge ese fichero y dónde se publica cada versión. ## Otros idiomas - [Índice de la documentación en inglés](https://docs.jmrp.io/ghchronicle/llms.txt): la misma documentación en inglés, página por página ## Optional Omite esta sección si el contexto es corto; nada de lo anterior depende de ella. Sus páginas sirven a quien maneja ghchronicle desde otro programa o cambia su código, y la documentación completa repite todas las páginas de este índice en un solo archivo. - [Llamarlo desde un programa](https://docs.jmrp.io/ghchronicle/es/reference/subprocess/): No hay biblioteca de Go. Lo que hay es una pasada, NDJSON por la salida estándar, y buenas razones para no llamarlo en bucle. - [Las capas de prueba](https://docs.jmrp.io/ghchronicle/es/reference/testing/): Tres capas, y solo la primera es gratis: el contrato de los bytes, los almacenes reales en contenedores y las consultas propias de los dashboards. - [Documentación completa](https://docs.jmrp.io/ghchronicle/es/llms-full.txt) (865 KB): todas las páginas en español concatenadas, en el orden de este índice