parse_json()

bir string değerini JSON değeri olarak yorumlar ve değerini olarak dynamicdöndürür. Mümkünse, değer ilgili veri türlerine dönüştürülür. Veri türü dönüştürmesi olmadan katı ayrıştırma için extract() veya extract_json() işlevlerini kullanın.

Bir JSON bileşik nesnesinin birden fazla öğesini ayıklamanız gerektiğinde extract_json() işlevi üzerinde parse_json() işlevini kullanmak daha iyidir. Mümkün olduğunda dynamic() kullanın.

Kullanım dışı diğer adlar: parsejson(), toobject(), todynamic()

Syntax

parse_json(Json)

Söz dizimi kuralları hakkında daha fazla bilgi edinin.

Parametreler

Ad Tür Gerekli Açıklama
Json string ✔️ JSON olarak ayrıştırmak için JSON biçimli değer veya dinamik özellik paketi biçimindeki dize.

Döndürülenler

json değeri tarafından belirlenen türdeki dynamic bir nesne:

Örnek

Aşağıdaki örnekte, şuna benzeyen bir string olduğundacontext_custom_metrics:

{"duration":{"value":118.0,"count":5.0,"min":100.0,"max":150.0,"stdDev":0.0,"sampledValue":118.0,"sum":118.0}}

ardından aşağıdaki sorgu nesnedeki yuvanın duration değerini alır ve bundan iki yuva duration.value alır ve duration.min (118.0 ve 110.0sırasıyla ).

T
| extend d=parse_json(context_custom_metrics) 
| extend duration_value=d.duration.value, duration_min=d["duration"]["min"]

Notlar

"Yuvalardan" birinin başka bir JSON dizesi olduğu bir özellik torbasını açıklayan bir JSON dizesine sahip olmak yaygın bir durumdur.

Örnek:

let d='{"a":123, "b":"{\\"c\\":456}"}';
print d

Bu gibi durumlarda, yalnızca iki kez çağrı parse_json yapılması gerekmez, aynı zamanda ikinci çağrıda tostring kullanıldığından emin olmak için de gereklidir. Aksi takdirde, bildirilen türü dynamicolduğu için parse_json ikinci çağrısı girişi olduğu gibi çıkışa geçirir.

let d='{"a":123, "b":"{\\"c\\":456}"}';
print d_b_c=parse_json(tostring(parse_json(d).b)).c