This skill will validate an ASIM by checking the schema output of the parser and also checking the data that the parser represents in the columns. Use this skill after you have created or updated an ASIM parser to validate that the parser is correctly mapping the source data to the ASIM schema.
76
95%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Low
Low-risk findings worth noting
There are two validations that will need to be run against the ASIM parser:
This skill requires the following:
.kql file).NetworkSession, Authentication).az-cli-command-runner skill to find them:az monitor log-analytics workspace list --query "[?customerId=='<workspaceId>'].{name:name, resourceGroup:resourceGroup}" -o jsonAll queries in this skill must be executed using the log-analytics-workspace-queryer skill.
Before fetching the YAML files, check if ASimSchemaTester and ASimDataTester are already available as saved searches in the workspace. Use the az-cli-command-runner skill to run:
az monitor log-analytics workspace saved-search list --resource-group <rg> --workspace-name <name> --query "[].{functionAlias:functionAlias}" -o tableLook for entries with values ASimSchemaTester and ASimDataTester in the results.
Download the ARM template JSON files:
Use the az-cli-command-runner skill to deploy each template:
az deployment group create --resource-group <resourceGroup> --template-file <templateFilePath> --parameters Workspace=<workspaceName> WorkspaceRegion=<location>After successful deployment, the functions are available in the workspace. Use the simplified direct call queries in Steps 1 and 2.
Run the schema validation query:
<ASIM parser KQL> | getschema | invoke ASimSchemaTester("<name of the ASIM schema>")Results fall into 3 severity levels:
(0) Error — Must be fixed before proceeding. These indicate missing mandatory fields, type mismatches, or missing aliases.(1) Warning — Missing recommended fields. Attempt to fix, but do not brute-force a fix if the source data does not contain the information.(2) Info — Two sub-categories:
project.Address all errors before proceeding to Step 2.
Run the data validation query. The | limit 1000 restricts the number of rows inspected because the data tester evaluates individual row values, which is more expensive than schema-level checks.
<ASIM parser KQL> | limit 1000 | invoke ASimDataTester("<name of the ASIM schema>")After making fixes based on the validation results, run the modified parser KQL query by itself to confirm it executes without syntax errors:
<ASIM parser KQL>If the query fails with a syntax error, fix the issue before returning results to the calling skill.
This skill returns the following to the calling skill or orchestrator:
ASimSchemaTester.ASimDataTester.(0) results remain after both validations.fd26ba7
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.