CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

azure-log-analytics-kql

Use when writing a KQL query against this app's Azure Log Analytics workspace to investigate Container App backend/frontend logs — production incidents, request/response tracing, or any query returning a SYN0002 parse error, an empty result you didn't expect, or a count that looks too low for the time range.

71

Quality

89%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

82%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A dense, high-signal body: every section encodes operational knowledge Claude cannot infer (dual tables, column-naming conventions, reserved-word trap, dict-repr log format) delivered as executable KQL. The only real gaps are minor — a duplicated warning and the absence of an explicit ordered investigation workflow.

DimensionReasoningScore

Conciseness

Efficient and assumes competence — every section conveys repo-specific knowledge Claude cannot know (two tables, column mappings, reserved-word trap, dict-repr format), with no explanation of concepts Claude already knows. Minor trimming opportunities exist: the silent-failure warning is stated in the Overview ('Getting either of those wrong doesn't error — it silently returns an incomplete or wrong result') and repeated in the two-table section ('doesn't error — it just silently undercounts or returns nothing, which is far more dangerous than a syntax error').

4 / 5

Actionability

Fully executable, copy-paste-ready KQL throughout: the union-with-aliasing query, the shape-histogram query, concrete extraction regexes ('extract(@"\|\s*INFO\s*\|\s*([0-9a-f]+)\s*\|", 1, Log)', 'extract(@"'field_name': ([^,}]+)", 1, Log)'), and the exact MCP tool invocation ('mcp__plugin_azure_azure__monitor' with command 'monitor_workspace_log_query') — covering the common cases for this skill's niche.

5 / 5

Workflow Clarity

Clear topic-ordered sections with a validate-first checkpoint ('Before writing the real query, histogram the actual line shapes over a small sample') and a symptom→cause→fix quick-reference table that serves as an error-recovery loop. It falls short of a 5 because there is no explicit end-to-end investigation sequence (e.g. ordered steps for a typical incident query); not a 3, since checkpoints like shape-discovery-before-regex and the recovery table are explicitly present.

4 / 5

Progressive Disclosure

Good single-file structure: well-organized sections, a comparison table for the two-table trap, and a quick-reference table, with all content appropriately inline for a skill of this size and no references to chase. It is above the ~50-line simple-skill threshold where organized sections alone would justify a 5, and a companion skill ('azure:azure-diagnostics') is correctly signaled rather than duplicated.

4 / 5

Total

17

/

20

Passed

Description

90%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong, highly specific description with excellent trigger terms, complete what/when coverage, and minimal conflict risk. Its only flaw is the second-person clause 'an empty result you didn't expect', which costs it a specificity point under the voice guideline.

Suggestions

Rewrite in third person to match the voice guideline, e.g. 'an unexpected empty result' instead of 'an empty result you didn't expect'.

The what-side could state the skill's core capabilities more explicitly (e.g. that it covers querying both the native and _CL log tables and writing extraction regexes against the dict-repr log format), since the description currently leans heavily on the when-side.

DimensionReasoningScore

Specificity

The description names the domain and several concrete situations ('production incidents, request/response tracing, or any query returning a SYN0002 parse error, an empty result... or a count that looks too low'), which would anchor at 4; however, it uses second-person voice ('an empty result you didn't expect'), which the judging guidelines penalize by reducing specificity by 1.

3 / 5

Completeness

Explicitly answers both what ('writing a KQL query against this app's Azure Log Analytics workspace to investigate Container App backend/frontend logs') and when ('Use when... production incidents, request/response tracing, or any query returning a SYN0002 parse error, an empty result... or a count that looks too low'), with concrete trigger phrases throughout.

5 / 5

Trigger Term Quality

Comprehensive natural-term coverage for this niche: 'KQL query', 'Azure Log Analytics workspace', 'Container App backend/frontend logs', 'production incidents', 'request/response tracing', 'SYN0002 parse error', 'empty result', 'count that looks too low' — all phrases a user would plausibly say when they need this skill.

5 / 5

Distinctiveness Conflict Risk

Clear niche — KQL against this app's specific Log Analytics workspace for Container App log investigation — with highly distinctive triggers (SYN0002, empty result, low count) and even a companion-skill boundary ('azure:azure-diagnostics'), making mis-triggering unlikely.

5 / 5

Total

18

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

HHS/OPRE-OPS

Path

.claude/skills/azure-log-analytics-kql/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.