mirror of
https://github.com/hanzoai/o11y.git
synced 2026-10-15 12:58:33 +00:00
Verified against ghcr.io/hanzoai/datastore:26.6.1.1, the image these files run:
config /etc/datastore-server, data /var/lib/datastore, config root <datastore>,
client /usr/bin/datastore-client, and an entrypoint that reads DATASTORE_* and
nothing else. The mounts pointed at /etc/clickhouse-server and
/var/lib/clickhouse, which the image does not have, and passed CLICKHOUSE_* the
entrypoint ignores.
.devenv bound ${PWD}/../../../deploy/common/clickhouse/custom-function.xml; that
directory is deploy/common/datastore.
Service, hostname, volume, anchor and swarm-config names follow, and the cluster
XML replicas match the compose hostnames again.
The eight built-in integrations credited [email protected] and o11y.io, which
does not resolve; ours is o11y.hanzo.ai. The datastore integration is titled
Hanzo Datastore. Its id stays — an installed integration references it.
data-collected.json and the dashboards keep ClickHouseProfileEvents_* and
ClickHouseAsyncMetrics_*: those are the names the server binary emits, checked
in the running pod.
232 lines
6.1 KiB
JSON
232 lines
6.1 KiB
JSON
{
|
|
"id": "postgres",
|
|
"title": "PostgreSQL",
|
|
"description": "Monitor Postgres with metrics and logs",
|
|
"author": {
|
|
"name": "Hanzo",
|
|
"email": "[email protected]",
|
|
"homepage": "https://o11y.hanzo.ai"
|
|
},
|
|
"icon": "file://icon.svg",
|
|
"categories": [
|
|
"Database"
|
|
],
|
|
"overview": "file://overview.md",
|
|
"configuration": [
|
|
{
|
|
"title": "Prerequisites",
|
|
"instructions": "file://config/prerequisites.md"
|
|
},
|
|
{
|
|
"title": "Collect Metrics",
|
|
"instructions": "file://config/collect-metrics.md"
|
|
},
|
|
{
|
|
"title": "Collect Logs",
|
|
"instructions": "file://config/collect-logs.md"
|
|
}
|
|
],
|
|
"assets": {
|
|
"logs": {
|
|
"pipelines": []
|
|
},
|
|
"dashboards": [
|
|
"file://assets/dashboards/overview.json"
|
|
],
|
|
"alerts": []
|
|
},
|
|
"connection_tests": {
|
|
"logs": {
|
|
"attribute_key": "source",
|
|
"attribute_value": "postgres"
|
|
}
|
|
},
|
|
"data_collected": {
|
|
"logs": [
|
|
{
|
|
"name": "Process ID",
|
|
"path": "attributes.pid",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "Timestamp",
|
|
"path": "timestamp",
|
|
"type": "timestamp"
|
|
},
|
|
{
|
|
"name": "Severity Text",
|
|
"path": "severity_text",
|
|
"type": "string"
|
|
},
|
|
{
|
|
"name": "Severity Number",
|
|
"path": "severity_number",
|
|
"type": "number"
|
|
}
|
|
],
|
|
"metrics": [
|
|
{
|
|
"name": "postgresql_backends",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of backends."
|
|
},
|
|
{
|
|
"name": "postgresql_bgwriter_buffers_allocated",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "Number of buffers allocated."
|
|
},
|
|
{
|
|
"name": "postgresql_bgwriter_buffers_writes",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "Number of buffers written."
|
|
},
|
|
{
|
|
"name": "postgresql_bgwriter_checkpoint_count",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of checkpoints performed."
|
|
},
|
|
{
|
|
"name": "postgresql_bgwriter_duration",
|
|
"type": "sum",
|
|
"unit": "ms",
|
|
"description": "Total time spent writing and syncing files to disk by checkpoints."
|
|
},
|
|
{
|
|
"name": "postgresql_bgwriter_maxwritten",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "Number of times the background writer stopped a cleaning scan because it had written too many buffers."
|
|
},
|
|
{
|
|
"name": "postgresql_blocks_read",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of blocks read."
|
|
},
|
|
{
|
|
"name": "postgresql_commits",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of commits."
|
|
},
|
|
{
|
|
"name": "postgresql_connection_max",
|
|
"type": "gauge",
|
|
"unit": "number",
|
|
"description": "Configured maximum number of client connections allowed"
|
|
},
|
|
{
|
|
"name": "postgresql_database_count",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "Number of user databases."
|
|
},
|
|
{
|
|
"name": "postgresql_database_locks",
|
|
"type": "gauge",
|
|
"unit": "number",
|
|
"description": "The number of database locks."
|
|
},
|
|
{
|
|
"name": "postgresql_db_size",
|
|
"type": "sum",
|
|
"unit": "Bytes",
|
|
"description": "The database disk usage."
|
|
},
|
|
{
|
|
"name": "postgresql_deadlocks",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of deadlocks."
|
|
},
|
|
{
|
|
"name": "postgresql_index_scans",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of index scans on a table."
|
|
},
|
|
{
|
|
"name": "postgresql_index_size",
|
|
"type": "gauge",
|
|
"unit": "Bytes",
|
|
"description": "The size of the index on disk."
|
|
},
|
|
{
|
|
"name": "postgresql_operations",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of db row operations."
|
|
},
|
|
{
|
|
"name": "postgresql_replication_data_delay",
|
|
"type": "gauge",
|
|
"unit": "Bytes",
|
|
"description": "The amount of data delayed in replication."
|
|
},
|
|
{
|
|
"name": "postgresql_rollbacks",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of rollbacks."
|
|
},
|
|
{
|
|
"name": "postgresql_rows",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of rows in the database."
|
|
},
|
|
{
|
|
"name": "postgresql_sequential_scans",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of sequential scans."
|
|
},
|
|
{
|
|
"name": "postgresql_table_count",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "Number of user tables in a database."
|
|
},
|
|
{
|
|
"name": "postgresql_table_size",
|
|
"type": "sum",
|
|
"unit": "Bytes",
|
|
"description": "Disk space used by a table."
|
|
},
|
|
{
|
|
"name": "postgresql_table_vacuum_count",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "Number of times a table has manually been vacuumed."
|
|
},
|
|
{
|
|
"name": "postgresql_temp_files",
|
|
"type": "sum",
|
|
"unit": "number",
|
|
"description": "The number of temp files."
|
|
},
|
|
{
|
|
"name": "postgresql_wal_age",
|
|
"type": "gauge",
|
|
"unit": "seconds",
|
|
"description": "Age of the oldest WAL file."
|
|
},
|
|
{
|
|
"name": "postgresql_wal_delay",
|
|
"type": "gauge",
|
|
"unit": "seconds",
|
|
"description": "Time between flushing recent WAL locally and receiving notification that the standby server has completed an operation with it."
|
|
},
|
|
{
|
|
"name": "postgresql_wal_lag",
|
|
"type": "gauge",
|
|
"unit": "seconds",
|
|
"description": "Time between flushing recent WAL locally and receiving notification that the standby server has completed an operation with it."
|
|
}
|
|
]
|
|
}
|
|
} |