我試圖讓我的頭腦圍繞在Azure應用程序洞察中編寫查詢來捕獲與使用Azure Bot Framework構建的bot的交互。Azure應用程序洞察 - 對象內的值
我有標題的表格,如timestamp
,name
,customDimensions
,customDimensions
和內customDimensions
的對象,如
{ "conversationData": "{}", "privateConversationData": "{\"nameForm\":{\"NAME\":\"foo\",\"ICCID\":\"12121212121212121212\"}}", "userData": "{}", "conversationId": "878fhiee1k33j5ci", "userId": "default-user", "metrics": "92.25833" }
我可以很容易地編寫查詢按名稱選擇項目例如 customEvents | where name contains "Activity"
但是我如何根據對象內的鍵來選擇,例如上面privateConversationData
以內的鍵?
例如"privateConversationData": "{\"nameForm\":{\"NAME\":\"foo\",\"ICCID\":\"12121212121212121212\"}}",
引用一個名爲nameForm的對話框,我將如何編寫查詢以顯示nameForm的使用次數?或者包含其他類型對話的查詢(例如,不只是nameForm,而是fooForm,barForm)以及它們使用的次數?
非常感謝您的幫助!
謝謝@yonisha。這看起來很有希望,但目前還不完全正確。例如,第一個查詢不會返回任何結果。但是,如果我運行'customEvents | where timestamp> ago(20d)and isnotempty(customDimensions.privateConversationData)''然後我可以看到結果,但添加了'.formName'例如'.nameForm'結果不會返回任何記錄。同樣,第二個查詢似乎返回不包含'privateConversationData'的結果(或者它正在尋找的那個模式) –
@StuartBrown,更新了查詢,現在應該工作 – yonisha
謝謝!我已將第一個查詢更改爲'customEvents | extend conversationData = customDimensions [「privateConversationData」] | where timestamp> ago(20d)and isnotempty(conversationData)and conversationData contains「nameForm」 | count' - 使用'contains'而不是'starstwith'工作。第二個查詢我沒有任何運氣,但沒有匹配的記錄。如果我運行沒有'和isnotnull(dialogKind)查詢'我得到一個計數值的單列(有更多的對話框,只有一個,所以應該是多列?)。添加'和isnotnull(dialogKind)'返回沒有匹配 –