
cx-service-catalog
Query Coralogix's Service Catalog (APM v2 entities) with the cx service-catalog CLI — discover entity types, list known entities, check their schema, and pull aggregated or timeseries data for services, databases, operations, JVMs, and Kubernetes pods. Use when the user asks to "list services", "what entity types exist", "show me service latency", "check error rate for a service", "which pods are using the most memory", "database operation performance", "JVM GC pauses", "service health over time", "compare services by latency", "what columns are available for this entity type", "service catalog schema", or wants to explore APM entities and their metrics.
- Installs
- 2.5K
- Last 24h
- +85
- Trending rank
- #2204
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/coralogix/cx-cli --skill cx-service-catalog- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads cx-service-catalog automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Service Catalog Skill
Use this skill to discover and query Service Catalog entities — services, databases, operations, database operations, JVMs, JVM GC, Kubernetes pods, and transactions — and their columnar metrics (latency, error rate, health, resource usage, etc.) via the v2 Service Catalog API.
CLI Commands
| Command | Purpose | Key flags |
|---|---|---|
cx service-catalog entity-types | List entity types this account has data for | - |
cx service-catalog schema <entity-type> | Columns/labels schema for one entity type | - |
cx service-catalog entities <entity-type> | Known entities of one type (e.g. service names) | - |
cx service-catalog data <entity-type> | Aggregated column data across every entity of a type | --start, --end, --column (required, repeatable); --group-by, --filter, --aggregation, --limit, --sort-column, --sort-order |
cx service-catalog entity-data <entity-type> <entity-id> | Column data for one named entity (drilldown) | --start, --end, --column (required, repeatable); --group-by, --filter, --aggregation |
- All commands are read-only and support
-o json/-o toonfor structured output. - Entity type accepts short forms:
service,database,operation,database-operation,jvm,jvm-gc,k8s-pod,transaction(case-insensitive, hyphens or underscores). The full proto name (ENTITY_TYPE_K8S_POD) also works. Unknown values are rejected client-side before any request is made. --start/--endacceptnow,now-1h-style relative expressions, or RFC3339 timestamps.--columnis required and repeatable — discover valid column ids withcx service-catalog schema <entity-type>first; the API rejects unknown ones.--filter label=value1,value2is repeatable across distinct labels only (filters AND together); combine multiple values for the same label with commas rather than repeating the flag — repeating a label is rejected client-side.--aggregationistable(default behavior when combined with--limit/--sort-column/--sort-order) ortimeseries.--limit,--sort-column, and--sort-orderonly apply totable— the backend silently ignores them fortimeseries, so the CLI rejects that combination up front rather than sending a request whose flags are quietly dropped.entity-datapercent-encodes the entity id for you — pass it as returned byentities(e.g.checkout/api), quoted if it contains/.
Inspection Workflow
Four steps, and only because each one supplies an input the next one requires:
entity-types gives valid <entity-type> values, schema gives valid
--column ids, entities gives the entity-id for a drilldown.
-
Discover what entity types exist — never guess, they vary by account:
cx service-catalog entity-types -o json -
Check the schema for one entity type to find valid column ids and filterable/groupable labels:
cx service-catalog schema service -o json -
List known entities of that type (e.g. service names):
cx service-catalog entities service -o json -
Query data — aggregated across all entities, or scoped to one. Column ids, filter/group-by labels, and entity ids below are placeholders — always substitute values returned by
schema/entitiesfor the entity type in question, they vary by account and entity type:cx service-catalog data <entity-type> --start now-1h --end now \ --column <column-id> --column <column-id> -o json cx service-catalog entity-data <entity-type> <entity-id> --start now-1h --end now \ --column <column-id> -o json
Examples
The commands below use service and k8s-pod for concreteness, but every
<column-id>, <filterable-label>, <groupable-label>, and <entity-id>
must come from that entity type's own schema/entities output — never
assume a column or label from one entity type exists on another.
Top 5 entities by a metric in the last hour
cx service-catalog schema service -o json # discover column ids first
cx service-catalog data service --start now-1h --end now \
--column <column-id> --aggregation table \
--sort-column <column-id> --sort-order desc --limit 5 -o json
Filter to one label value
cx service-catalog schema service -o json # discover filterable_labels first
cx service-catalog data service --start now-1h --end now \
--column <column-id> --column <column-id> \
--filter <filterable-label>=<value> -o json
Group by a label
cx service-catalog schema service -o json # discover groupable_labels first
cx service-catalog data service --start now-1h --end now \
--column <column-id> --group-by <groupable-label> -o json
Kubernetes pod resource saturation
cx service-catalog schema k8s-pod -o json # discover column ids first
cx service-catalog data k8s-pod --start now-1h --end now \
--column <column-id> --column <column-id> --column <column-id> -o json
Latency over time for one entity
cx service-catalog entities service -o json # discover entity ids first
cx service-catalog entity-data service <entity-id> --start now-24h --end now \
--column <column-id> --aggregation timeseries -o json
Just the rows
# Table responses live under .rows; timeseries under .series
cx service-catalog data service --start now-1h --end now \
--column <column-id> -o json | jq '.rows'
Key Principles
- Discover before querying —
entity-typesandschemaare cheap and answer "what's valid here" before spending adata/entity-datacall on a guess. --columnvalues are per-entity-type — a column valid forservicemay not exist fork8s-pod; always re-checkschemawhen switching entity types.- Malformed responses are errors, not silent empty results — a column that is neither a value nor an error (or both) fails loudly rather than producing a partial or empty row, so a non-zero exit means investigate, not "no data".
- A column-level error is not a command failure — an individual column can
come back as
{"error": "..."}inside an otherwise successful row (e.g. a query timeout for just that column); check per-column before assuming the whole request failed. tablevstimeseriesare mutually exclusive result shapes —tableresponses are flat rows suitable for-o json | jq '.rows';timeseriesresponses nest datapoints per series and are best consumed as raw JSON rather than forced into a table.- Use
-o jsonwithjqfor filtering; use-o toonfor token-efficient output in agent contexts. - Multi-profile fan-out works on every subcommand — repeat
-p <profile>to compare the same entity type/data across accounts; rows and series are tagged withprofilewhen more than one is given.
Related Skills
cx-infra— infrastructure resource health (hosts, containers) is a distinct concept from Service Catalog entity health; usecx-infrafor host/instance-level monitoring and this skill for application/service-level APM entities.cx-telemetry-querying— once a service or pod name surfaces from this skill's commands, pivot to raw telemetry:cx logs "filter $l.subsystemname == '<service>'"orcx search-fields "<name>" -s valueto find related log/span fields. Correlate a latency or error spike with the underlying logs/spans.cx-alerts—cx alerts list --name "<service-name>"finds alert definitions matching a service surfaced by this skill.cx-dashboards—cx dashboards search "<service-name> ..."finds dashboards built around a service found here.
FAQ
What does the cx-service-catalog skill do?
Query Coralogix's Service Catalog (APM v2 entities) with the cx service-catalog CLI — discover entity types, list known entities, check their schema, and pull aggregated or timeseries data for services, databases, operations, JVMs, and Kubernetes pods. Use when the user asks to "list services", "what entity types exist", "show me service latency", "check error rate for a service", "which pods are using the most memory", "database operation performance", "JVM GC pauses", "service health over time", "compare services by latency", "what columns are available for this entity type", "service catalog schema", or wants to explore APM entities and their metrics.
How do I install cx-service-catalog?
Run npx skills add https://github.com/coralogix/cx-cli --skill cx-service-catalog in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/cx-service-catalog/ (personal) or .claude/skills/cx-service-catalog/ (project).
Which AI agents can use cx-service-catalog?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is cx-service-catalog safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains cx-service-catalog?
It is published by coralogix in coralogix/cx-cli. It has 2,494 recorded installs.
More from coralogix/cx-cli
cx-telemetry-querying
coralogix/cx-cli
Use this skill for any question involving telemetry data: "investigate an issue", "debug a problem", "find out why something is slow", "check error rates", "analyze user behavior", "understand a production incident", "query telemetry data", "look at logs", "search logs", "find errors", "find stack traces", "filter by severity", "check traces", "examine spans", "investigate request latency", "debug service-to-service calls", "look up a trace ID", "analyze RUM data", "query rum.events", "check frontend performance", "frontend errors", "Core Web Vitals", "JavaScript exceptions", "query metrics", "check CPU usage", "run a PromQL query", "check error rate", "look up a metric", "check memory usage", "how do I write a DataPrime query", "DataPrime syntax", or wants to answer questions using observability data from logs, metrics, traces, RUM, or APM.
cx-search-dashboard
coralogix/cx-cli
This skill should be used when the user asks to "find a dashboard", "search dashboards", "does a dashboard exist for X", "find widgets that query Y", "which dashboards use this field", "find a dashboard about errors", "look up dashboards by description", "search for existing monitoring dashboards", "find widgets that reference a field", or wants to discover existing Coralogix dashboards or widgets using natural-language or field-based search.
coralogix-docs
coralogix/cx-cli
Search and read official Coralogix platform documentation using cx docs search and cx docs fetch. Use when the user asks how Coralogix features work, how to configure or use the UI, set up integrations (OpenTelemetry, agents, collectors, webhooks), manage API keys, explore spans/traces/logs in the product, configure alerts/SLOs/dashboards, or needs authoritative product docs — not live tenant telemetry.
cx-alerts
coralogix/cx-cli
This skill should be used when the user asks to "manage alerts", "create alert", "list alerts", "delete alert", "check alert status", "enable alert", "disable alert", "investigate firing alerts", "check which alerts are active", "find alerting rules", "set up an alert", "configure alerting", "mute an alert", "silence an alert", "see alert definitions", "check alert priority", or wants to manage Coralogix alert definitions using the cx CLI.
cx-cli
coralogix/cx-cli
This skill should be used whenever the user runs any cx command, uses the cx CLI, Coralogix CLI, or mentions cx in the context of Coralogix observability. This skill provides cross-cutting concerns like update notifications that apply to all cx commands.
cx-observability-setup
coralogix/cx-cli
Use this skill when the user asks to "set up monitoring", "configure observability", "onboard new service", "create saved view", "set up notifications", "configure webhook", "set up Slack integration", "outgoing webhook", "automation action", "webhook for alerts", "create view", "saved view", "view folder", "organize dashboards", "install integration", "configure extension", "contextual data", "connect external service", "create notification connector", "set up email alerts", "configure PagerDuty", "notification routing", "deploy extension", "test webhook", "notification preset", "test notification", "webhook actions", or wants to set up, configure, or manage the observability stack for a service or team.
Popular data & databases skills
supabase-postgres-best-practices
supabase/agent-skills
Postgres best practices maintained by Supabase, for Postgres running anywhere. Load this skill BEFORE writing or changing anything that lives in a Postgres database: creating or altering tables and columns (including choosing column types), schema design, migrations and declarative schema files, RLS policies and the tests that verify them, indexes, triggers, database functions, queues and scheduled jobs (pgcron, pgmq), vector/semantic search (pgvector), and restoring dumps (pgrestore) or importing data. Also load it when diagnosing slow queries, high CPU, timeouts, EXPLAIN plans, connection exhaustion, locking, bloat, or rows visible to the wrong user or tenant. This is not just a performance guide — schema, migration, security, and SQL authoring tasks need these rules too, even for a one-column change or a single query.
prisma-client-api
prisma/skills
Prisma Client API reference covering model queries, filters, operators, and client methods. Use when writing database queries, using CRUD operations, filtering data, or configuring Prisma Client. Triggers on "prisma query", "findMany", "create", "update", "delete", "$transaction".
prisma-database-setup
prisma/skills
Deprecated compatibility name for prisma-orm-setup. Use only when a user or existing integration explicitly invokes prisma-database-setup; otherwise select prisma-orm-setup.
prisma-cli
prisma/skills
Prisma ORM 7 CLI reference for existing Prisma 7 applications or explicitly selected Prisma 7 workflows. Covers prisma init, generate, migrate, db, dev, studio, and mcp. For setup, connection repair, or Prisma 8, use prisma-orm-setup; not the Prisma Platform CLI.
prisma-postgres
prisma/skills
Deprecated compatibility name for prisma-postgres-setup. Use only when a user or existing integration explicitly invokes prisma-postgres; otherwise select prisma-postgres-setup.
prisma-driver-adapter-implementation
prisma/skills
Required reference for Prisma ORM 7 SQL driver adapter work. Use when implementing or modifying adapters, adding database drivers, or touching SqlDriverAdapter, Transaction, savepoint, result mapping, or DriverAdapterError behavior. Covers current transaction lifecycle, optional savepoint hooks, original database-error preservation, and verification.