{"ref":"artifact:saptools-cf-metrics","page":"/artifacts/saptools-cf-metrics","json":"/artifacts/saptools-cf-metrics.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"saptools-cf-metrics","name":"@saptools/cf-metrics","artifact_type":"cli","ecosystem":"btp","domain":"operations-and-runtime","origin_ring":"independent","description":{"one_line":"A read-only command line that queries the container and OpenTelemetry metrics [SAP Cloud Logging](artifact:btp-cloud-logging) has ingested for Cloud Foundry apps, as history over a time range, a ranking across apps or a live watch.","short":"Read-only query tool for metrics in SAP Cloud Logging","what_it_solves":"`cf app` shows an app's CPU and memory now, and the Log Cache of [Cloud Foundry](artifact:btp-cloud-foundry-runtime) keeps only a few minutes of that history. This command line reads the `metrics-*` index of [SAP Cloud Logging](artifact:btp-cloud-logging) instead: `history` buckets container CPU, memory and filesystem usage or a custom gauge, sum or histogram over a time range, `top` ranks apps on one metric, and `watch` polls for new points during a deploy or an incident. It finds the dashboards credential on the Cloud Logging instance from service keys or an app binding made before SAML was enabled, caches it for seven days under `~/.saptools`, and warns when `container.cpu.usage` mixes its two series, fraction of entitlement and fraction of one core, in one window. Histograms report count, sum and average with no percentiles, and since it never instruments an app, it reads only what is already exported to Cloud Logging."},"links":{"npm":"https://www.npmjs.com/package/@saptools/cf-metrics","repo":"https://github.com/dongitran/saptools","docs":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/README.md"},"identity":{"author":"dongitran","license":"MIT"},"compat":{"deployment":["cf"]},"type_properties":{"distribution":{"value":["npm"],"sources":[{"url":"https://github.com/dongitran/saptools","title":"@saptools/cf-metrics — README","checked":"2026-10-18","quote":"npm install -g @saptools/cf-metrics"}]}},"provides":["capability:telemetry"],"requires":[{"ref":"artifact:btp-cloud-logging","for":"Every query reads the metric documents stored in the OpenSearch backend of a Cloud Logging instance, through a dashboards credential found on that instance.","sources":[{"url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/README.md","title":"dongitran/saptools — packages/cf-metrics/README.md","checked":"2026-10-15","quote":"ingested into SAP Cloud Logging's OpenSearch backend (index pattern `metrics-*`)."}]}],"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-10-15"},"maintainers":["actor:dong-tran"],"contributors":["actor:dong-tran"],"drafted_with_ai":true},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"good","evidence":"1 month since release"},{"label":"Continuity","tier":"fair","evidence":"2 contributors, 1 publisher"},{"label":"Repository","tier":"good","evidence":"pushed 2026-09, not archived"}],"compatibility":[{"label":"Declared for","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Survived majors","tier":"unknown","evidence":"no BTP release lines in the atlas"},{"label":"Maintainer's CI","tier":"good","evidence":"CodeQL Security Scan green, 2026-09-18"}],"practice":[{"label":"Tests","tier":"good","evidence":"679 test files"},{"label":"Docs","tier":"good","evidence":"docs site, README 19 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":20,"unit":"installs/week"},{"value":3,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","latest_version":"0.13.1","majors":{"0.1":{"version":"0.1.0","date":"2026-08-31"},"0.2":{"version":"0.2.0","date":"2026-08-31"},"0.3":{"version":"0.3.0","date":"2026-08-31"},"0.4":{"version":"0.4.0","date":"2026-09-01"},"0.5":{"version":"0.5.0","date":"2026-09-01"},"0.6":{"version":"0.6.0","date":"2026-09-02"},"0.7":{"version":"0.7.0","date":"2026-09-02"},"0.8":{"version":"0.8.0","date":"2026-09-03"},"0.9":{"version":"0.9.0","date":"2026-09-05"},"0.10":{"version":"0.10.0","date":"2026-09-05"},"0.11":{"version":"0.11.0","date":"2026-09-05"},"0.12":{"version":"0.12.0","date":"2026-09-12"},"0.13":{"version":"0.13.0","date":"2026-09-13"}},"license":"MIT","first_release":"2026-08-31","last_release":"2026-09-13","releases":16,"cadence_days":0,"maintainers":1,"repository":"git+https://github.com/dongitran/saptools.git","repository_directory":"packages/cf-metrics","peer_cds":null,"dependencies":1,"node_engine":">=20.0.0","test_script":false,"types":true,"downloads_weekly":20,"downloads_monthly":75,"stars":3,"forks":0,"open_issues":1,"archived":false,"pushed_at":"2026-09-18","license_spdx":null,"org_owned":false,"default_branch":"main","created_at":"2026-04-03T14:04:40Z","open_prs":1,"tree_truncated":false,"test_files":679,"workflows":33,"other_ci":false,"readme_bytes":19388,"docs_files":0,"changelog":false,"license_file":false,"dts_files":2,"first_commit":"2026-08-31","last_commit":"2026-09-13","commits":22,"contributors":2,"ci_status":"success","ci_run_at":"2026-09-18","ci_workflow":"CodeQL Security Scan","ci_event":"push","readme_path":"packages/cf-metrics/README.md","readme_sha":"65358db63d471d757468cc9cd5cb1cd7e357f894","months_since_release":1,"dormant":false,"repo_read":"2026-10-26"},"release_notes":{"license":"MIT","quotable":true,"source":{"kind":"npm","path":"CHANGELOG.md","version":"0.13.1","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md"},"format":"headings","releases":[{"version":"0.13.1","date":"2026-09-13","date_source":"registry","heading":"0.13.1","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#0131","sections":[{"kind":"fix","heading":"Fixed","items":1}],"hash":"5ab8eabd0efdb3bd"},{"version":"0.13.0","date":"2026-09-13","date_source":"registry","heading":"0.13.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#0130","sections":[{"kind":"change","heading":"Changed","items":1}],"hash":"cf0cab380e8adb52"},{"version":"0.12.0","date":"2026-09-12","date_source":"registry","heading":"0.12.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#0120","sections":[{"kind":"fix","heading":"Fixed","items":9},{"kind":"change","heading":"Changed","items":1}],"hash":"b99435fba0fd751f"},{"version":"0.11.0","date":"2026-09-05","date_source":"registry","heading":"0.11.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#0110","sections":[{"kind":"fix","heading":"Fixed","items":11},{"kind":"change","heading":"Changed","items":1}],"hash":"5068ac9fffc25f9f"},{"version":"0.10.0","date":"2026-09-05","date_source":"registry","heading":"0.10.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#0100","sections":[{"kind":"fix","heading":"Fixed","items":9},{"kind":"change","heading":"Changed","items":1}],"hash":"35220e9c20a8699e"},{"version":"0.9.0","date":"2026-09-05","date_source":"registry","heading":"0.9.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#090","sections":[{"kind":"fix","heading":"Fixed","items":7},{"kind":"change","heading":"Changed","items":2}],"hash":"62e7945b6a59e3f2"},{"version":"0.8.0","date":"2026-09-03","date_source":"registry","heading":"0.8.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#080","sections":[{"kind":"fix","heading":"Fixed","items":10},{"kind":"change","heading":"Changed","items":2},{"kind":"other","heading":"Known limitations","items":3}],"hash":"2e5f21c77dad4abc"},{"version":"0.7.1","date":"2026-09-02","date_source":"registry","heading":"0.7.1","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#071","sections":[{"kind":"other","heading":null,"items":1}],"hash":"a3971b708c1df70b"},{"version":"0.7.0","date":"2026-09-02","date_source":"registry","heading":"0.7.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#070","sections":[{"kind":"other","heading":null,"items":2}],"hash":"c9ce097659093a19"},{"version":"0.6.0","date":"2026-09-02","date_source":"registry","heading":"0.6.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#060","sections":[{"kind":"other","heading":null,"items":6}],"hash":"4f3e22dce01df0c9"},{"version":"0.5.0","date":"2026-09-01","date_source":"registry","heading":"0.5.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#050","sections":[{"kind":"other","heading":null,"items":3}],"hash":"3f093ed8a6b40b67"},{"version":"0.4.0","date":"2026-09-01","date_source":"registry","heading":"0.4.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#040","sections":[{"kind":"other","heading":null,"items":7}],"hash":"1ecb94bc465145bf"},{"version":"0.3.1","date":"2026-08-31","date_source":"registry","heading":"0.3.1","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#031","sections":[{"kind":"other","heading":null,"items":4}],"hash":"0f994d4306a55760"},{"version":"0.3.0","date":"2026-08-31","date_source":"registry","heading":"0.3.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#030","sections":[{"kind":"other","heading":null,"items":7}],"hash":"c0c2ae3064280ac6"},{"version":"0.2.0","date":"2026-08-31","date_source":"registry","heading":"0.2.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#020","sections":[{"kind":"other","heading":null,"items":6}],"hash":"b86135077ce556b8"},{"version":"0.1.0","date":"2026-08-31","date_source":"registry","heading":"0.1.0","url":"https://github.com/dongitran/saptools/blob/main/packages/cf-metrics/CHANGELOG.md#010","sections":[{"kind":"other","heading":null,"items":8}],"hash":"5ee57255f6ddd06e"}],"versions":[{"version":"0.13.1","date":"2026-09-13"},{"version":"0.13.0","date":"2026-09-13"},{"version":"0.12.0","date":"2026-09-12"},{"version":"0.11.0","date":"2026-09-05"},{"version":"0.10.0","date":"2026-09-05"},{"version":"0.9.0","date":"2026-09-05"},{"version":"0.8.0","date":"2026-09-03"},{"version":"0.7.1","date":"2026-09-02"},{"version":"0.7.0","date":"2026-09-02"},{"version":"0.6.0","date":"2026-09-02"},{"version":"0.5.0","date":"2026-09-01"},{"version":"0.4.0","date":"2026-09-01"},{"version":"0.3.1","date":"2026-08-31"},{"version":"0.3.0","date":"2026-08-31"},{"version":"0.2.0","date":"2026-08-31"},{"version":"0.1.0","date":"2026-08-31"}],"crawled_at":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:dong-tran","name":"Đông Trần","json":"/actors/dong-tran.json"}],"contributors":[{"ref":"actor:dong-tran","name":"Đông Trần","json":"/actors/dong-tran.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}