بنقرة واحدة
monitor
Generate Guance monitor JSON from CSV metric files for any component.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Generate Guance monitor JSON from CSV metric files for any component.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Generate, repair, or review Guance Dashboard JSON from real metrics CSV files, tag metadata, and resource-catalog or custom-object CSV/JSON data.
Convert Grafana dashboard JSON into Guance dashboard JSON with a fully self-contained skill package. Use when the user wants to analyze Grafana dashboards before conversion, run conversion, audit conversion gaps, improve units or PromQL compatibility with LLM-assisted review, repair panel or variable mappings, preserve settings, groups, and vars as much as possible, validate generated Guance dashboard JSON against the bundled schemas, or debug why a Grafana dashboard does not convert cleanly.
Use the owl CLI for Guance queries, diagnostics, root-cause analysis, and structured Markdown reports.
Convert Prometheus alerting rules into Guance monitor JSON and validate all generated DQL.
Generate, fix, explain, and review DQL; final executable DQL must pass dqlcheck item by item.
Convert, validate, and explain Alibaba Cloud SLS queries as GuanceDB DQL.
| name | monitor |
| author | liurui |
| description | Generate Guance monitor JSON from CSV metric files for any component. |
Generate Guance monitor configuration files from component CSV metrics.
csv/{{component}}*.csv or csv/{{component}}.csv; stop if missing.output/monitor/{{component}}/{{component}}.json.checkers[].jsonScript.targets[].dql and checkers[].extend.querylist[].query.q.checkers[].jsonScript.targets[].dql.checkers[].extend.querylist[].query.q.dqlcheck -q '<DQL>' or dqlcheck --file.targets[].dql and extend.querylist[].query.q semantically identical.extend.querylist[].query.filters.last for pre-aggregated watermarks, status values, and count snapshots; do not default everything to avg../bin/dqlcheck -q 'M::`mysql`:(max(`Threads_connected`) AS `Result`) BY `host`'
./bin/dqlcheck -q 'M::`redis`:(avg(`used_memory_percent`) AS `Result`) BY `host`'
Do not deliver monitor JSON with unvalidated final DQL.
Before selecting thresholds, verify the metric's actual value domain and behavior:
0..1 or 0..100. A documented percent unit alone does not prove the stored scale. Use decimal thresholds such as 0.70 and 0.85 for 0..1 data, and 70 and 85 only for 0..100 data.0..1 ratio unscaled, do not append a percent sign in the message. Either display the raw ratio or convert the query result, thresholds, and message unit together to 0..100.*_incr, increase, or delta. Do not use a cumulative length, historical total, or current log length as a proxy for newly occurring events.| Metric type | Condition | Level | Duration |
|---|---|---|---|
| Utilization >= 80% | critical | critical | 5m |
| Utilization >= 60% | warning | warning | 5m |
| Availability < 100% | critical | critical | 5m |
| Latency >= 1000ms | warning | warning | 5m |
| Error rate >= 1% | critical | critical | 5m |
fatal, critical, error, and warning.warning + error or error + critical; do not jump directly from warning to critical.and clause to exclude higher ranges.>= 85, >= 75, < 20, or <= 5. The monitor must be understandable from one primary comparator per level.targets[].dql is the execution query, and extend.querylist[].query.q is the editor query. They must stay consistent.extend.querylist[].query.fieldFunc must match the function used in DQL.extend.querylist[].query.filters.extend.querylist[].query.groupBy must match the DQL BY fields so the UI and alert semantics agree.checkerOpt.rules and any mirrored rule structures must use one primary threshold operator per severity level; do not emit extra and-style range guards for the same level.and condition block shown in Guance continuous-trigger configuration.0..1 or 0..100 value domain and that the message unit matches the DQL result.