{"id":18729271,"url":"https://github.com/postgresml/pg_stat_sysinfo","last_synced_at":"2025-04-12T16:33:37.228Z","repository":{"id":162232710,"uuid":"636822382","full_name":"postgresml/pg_stat_sysinfo","owner":"postgresml","description":"Query system statistics with SQL.","archived":false,"fork":false,"pushed_at":"2023-06-09T13:43:31.000Z","size":44,"stargazers_count":18,"open_issues_count":2,"forks_count":3,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-26T11:21:13.667Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/postgresml.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"MIT-LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-05T18:18:53.000Z","updated_at":"2024-12-14T08:51:25.000Z","dependencies_parsed_at":null,"dependency_job_id":"08ed63c6-97e1-4f75-9b31-7fd523d1bda1","html_url":"https://github.com/postgresml/pg_stat_sysinfo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postgresml%2Fpg_stat_sysinfo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postgresml%2Fpg_stat_sysinfo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postgresml%2Fpg_stat_sysinfo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/postgresml%2Fpg_stat_sysinfo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/postgresml","download_url":"https://codeload.github.com/postgresml/pg_stat_sysinfo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248596743,"owners_count":21130756,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T14:26:23.823Z","updated_at":"2025-04-12T16:33:37.209Z","avatar_url":"https://github.com/postgresml.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# `pg_stat_sysinfo`\n\nCollects system statistics.\n\n```sql\n----\nCREATE EXTENSION pg_stat_sysinfo;\nCREATE EXTENSION\n----\nSELECT * FROM pg_stat_sysinfo_collect();\n      metric      |   dimensions |              at              |       value\n------------------+--------------+------------------------------+--------------------\n load_average     | duration:1m  | 2023-01-17 20:40:24.74495+00 |       4.3427734375\n load_average     | duration:5m  | 2023-01-17 20:40:24.74495+00 |        2.740234375\n load_average     | duration:15m | 2023-01-17 20:40:24.74495+00 |           2.390625\n cpu_usage        |              | 2023-01-17 20:40:24.74495+00 |   0.12653848528862\n memory_usage     |              | 2023-01-17 20:40:24.74495+00 | 10.022946522725185\n memory_size      |              | 2023-01-17 20:40:24.74495+00 |         7966543872\n memory_available |              | 2023-01-17 20:40:24.74495+00 |         7168061440\n swap_usage       |              | 2023-01-17 20:40:24.74495+00 |                  0\n swap_size        |              | 2023-01-17 20:40:24.74495+00 |                  0\n swap_available   |              | 2023-01-17 20:40:24.74495+00 |                  0\n disk_usage       | fs:/         | 2023-01-17 20:40:24.74495+00 |  48.68292833372914\n disk_size        | fs:/         | 2023-01-17 20:40:24.74495+00 |        66404147200\n disk_available   | fs:/         | 2023-01-17 20:40:24.74495+00 |        34076663808\n disk_usage       | fs:/boot/efi | 2023-01-17 20:40:24.74495+00 |  4.986992082951202\n disk_size        | fs:/boot/efi | 2023-01-17 20:40:24.74495+00 |          109422592\n disk_available   | fs:/boot/efi | 2023-01-17 20:40:24.74495+00 |          103965696\n(16 rows)\n\n```\n\n## Enabling Caching Collector\n\nAdd the extension library to `shared_preload_libraries` and set the collection\ninterval:\n\n```python\nshared_preload_libraries = 'pg_stat_sysinfo.so'\npg_stat_sysinfo.interval = '1s'   # Accepts any time format Postgres recognizes\n```\n\nThe cache is stored in Postgres shared memory. Up to 1280 KiB is cached -- over\nan hour, in most cases, at 1 query per second.\n\n```sql\n----\nCREATE EXTENSION pg_stat_sysinfo;\nCREATE EXTENSION\n----\nSELECT DISTINCT min(at) AS oldest,\n       max(at) - min(at) AS during\n  FROM pg_stat_sysinfo;\n            oldest             |     during\n-------------------------------+-----------------\n 2023-01-17 20:04:46.220977+00 | 00:55:55.908972\n(1 row)\n\n----\nSELECT DISTINCT dimensions FROM pg_stat_sysinfo;\n   dimensions\n----------------\n\n duration:1m\n duration:5m\n duration:15m\n disk:/\n disk:/boot/efi\n(6 rows)\n\n```\n\nBasic cache statistics are available:\n\n```sql\n----\nSELECT * FROM pg_stat_sysinfo_cache_summary();\n bytes_used | items\n------------+-------\n     563159 |  3587\n(1 row)\n\n```\n\n## Configuration Changes\n\nThe `pg_stat_sysinfo.interval` can be updated by changing `postgres.conf` and\nsending `SIGHUP` to the Postgres server process. The cache worker will use the\nnew interval from that point forward.\n\nIf a long enough time has passed between server startup and a `SIGHUP`, or\nbetween one `SIGHUP` and another, the cache worker will refresh the disk\nmetadata. This will allow it to pick up any disks that have been added to or\nremoved from the system.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpostgresml%2Fpg_stat_sysinfo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpostgresml%2Fpg_stat_sysinfo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpostgresml%2Fpg_stat_sysinfo/lists"}