逻辑应用程序不跟踪自定义属性作为日志分析的guid,为什么?

问题描述 投票:1回答:1

我现在在Logic应用程序中使用Compose连接器来跟踪从触发器中提取的属性,该值是从Json对象内的xml字符串中提取的Guid。

但出于某种原因,尝试记录Guid来记录分析本身并不起作用。但是当我只是写一些随机字符串时,它会以完全相同的方式记录提取的值。

所以这就是我正在做的事情:

在逻辑应用程序中我设置如下:

    "Log_Validation_Exception": {
    "inputs": {
        "ErrorInfo": "https://smartportdeviations.blob.core.windows.net@{body('Create_Validation_Exception_Blob')?['Path']}",
        "LoggingCode": "ValidationFaliure",
        "PayloadID": "@{first(xpath(xml(json(decodeBase64(triggerBody()?['ContentData']))['XmlObject']), '//*[name()=\"passId\"]/text()[1]'))}"
    },
    "runAfter": {
        "Create_Validation_Exception_Blob": [
            "Succeeded"
        ]
    },
    "trackedProperties": {
        "ErrorInfo": "@outputs('Log_Validation_Exception')?['ErrorInfo']",
        "LoggingCode": "@outputs('Log_Validation_Exception')?['LoggingCode']",
        "PayloadID": "@outputs('Log_Validation_Exception')?['PayloadID']"
    },
    "type": "Compose"
},

在passID元素中写GUID作为值时:

<passId>6725ca5f-83e1-c097-e053-e600000a4f6c</passId>

我在被跟踪的房产中得不到任何东西......

但是在添加这样的东西时:

<passId>adsgfasdgasdasdf</passId>

然后它记录下来......

以下图片供参考。

enter image description here

在OMS:enter image description here

此外,我知道逻辑应用程序成功提取GUID,因为它在逻辑应用程序中运行日志:

enter image description here

那么我在这里缺少什么?

更新:出于某种原因,如果我在GUID后面放置一个字母,那么它会记录GUID。但如果它是值的显式GUID格式,那么它将无法工作。

logging guid azure-logic-apps azure-log-analytics
1个回答
0
投票

被跟踪属性的类型决定了它的名称。跟踪的属性名称遵循以下模式:trackedProperties_<property name>_<type char>

所以PayloadID变成trackedProperties_Log_Validation_Exception_PayloadID_gtrackedProperties_PayloadID_s,具体取决于值是GUID还是字符串。

我不确定这是否与您的问题有关,因为我不确定您是如何查询跟踪属性的。

© www.soinside.com 2019 - 2024. All rights reserved.