Get a specified element out of a JSON text using a path expression.

Optionally convert the extracted string to a specific type.

The extract_json() and extractjson() functions are equivalent

extract_json("$.hosts[1].AvailableMB", EventText, typeof(int))


extract_json(jsonPath, dataSource, type)


Name Type Required Description
jsonPath string A JSONPath that defines an accessor into the JSON document.
dataSource string A JSON document.
type string An optional type literal. If provided, the extracted value is converted to this type. For example, typeof(long) will convert the extracted value to a long.

Performance tips

  • Apply where-clauses before using extract_json().
  • Consider using a regular expression match with extract instead. This can run very much faster, and is effective if the JSON is produced from a template.
  • Use parse_json() if you need to extract more than one value from the JSON.
  • Consider having the JSON parsed at ingestion by declaring the type of the column to be dynamic.


This function performs a JSONPath query into dataSource, which contains a valid JSON string, optionally converting that value to another type depending on the third argument.


The [bracket] notation and dot (.) notation are equivalent:

| extend AvailableMB = extract_json("$.hosts[1].AvailableMB", EventText, typeof(int))

| extend AvailableMB = extract_json("$['hosts'][1]['AvailableMB']", EventText, typeof(int))