從 Azure Logic Apps 中的工作流程連線到 Log Analytics 或 Application Insights

適用於:Azure Logic Apps (使用量 + 標準)

注意

Azure 監視器記錄連接器會取代 Azure Log Analytics 連接器Azure Application Insights 連接器。 此連接器提供與其他連接器相同的功能,而且是針對 Log Analytics 工作區或 Application Insights 資源執行查詢的慣用方法。 例如,當您連線到 Application Insights 資源時,您不需要建立或提供應用程式識別碼和 API 金鑰。 驗證會與 Microsoft Entra ID 整合。

若要在 Azure Logic Apps 中建置工作流程,以從 Log Analytics 工作區或 Azure 監視器中的 Application Insights 資源擷取資料,您可以使用 Azure 監視器記錄連接器。

例如,您可以建立邏輯應用程式工作流程,以透過 Office 365 Outlook 帳戶的電子郵件訊息傳送 Azure 監視器記錄資料、在 Azure DevOps 中建立 Bug,或張貼 Slack 訊息。 此連接器只提供動作,因此若要啟動工作流程,您可以使用週期觸發程序來指定簡單的排程,或來自另一個服務的任何觸發程序。

本指南描述如何建置邏輯應用程式工作流程,以透過電子郵件傳送 Azure 監視器記錄查詢的結果。

連接器技術參考

如需此連接器作業的相關技術資訊,請參閱連接器的參考文件

下列兩個動作都可以對 Log Analytics 工作區或 Application Insights 資源執行記錄查詢。 差異在於傳回資料的方式。

動作 描述
執行查詢並列出結果 傳回每個資料列做為其本身的物件。 當您想要在工作流程的其餘部分個別處理每個資料列時,請使用此動作。 該動作通常後面接著 For each 動作
執行查詢,以及將結果視覺化 傳回描述查詢結果集的 JPG 檔案。 此動作可讓您在工作流程的其餘部分使用結果集,例如將結果傳送到電子郵件中。 如果查詢傳回結果,則動作只會傳回 JPG 檔案。

限制

  • 連接器具有下列限制,根據您使用的查詢和結果大小,您的工作流程可能會達到此限制:

    限制 備註
    查詢回應大小上限 ~16.7 MB 或 16 MiB 連接器基礎結構規定該大小限制應設定為低於查詢 API 限制。
    記錄數目上限 50 萬筆記錄
    最大連接器逾時 110 秒
    最大查詢逾時 100 秒

    若要避免達到這些限制,請嘗試彙總資料以減少結果大小,或調整工作流程週期,以在較小的時間範圍內更頻繁地執行。 不過,由於快取,不建議使用間隔少於 120 秒的頻繁查詢。

  • [記錄] 頁面和連接器上的視覺效果會使用不同的圖表程式庫。 因此,連接器目前不包含某些功能。

必要條件

新增 Azure 監視器記錄動作

  1. Azure 入口網站中,於設計工具中開啟您的標準邏輯應用程式和工作流程。

  2. 在您想要新增 Azure 監視器記錄動作的工作流程中,請遵循這些一般步驟來新增 Azure 監視器記錄動作

    此範例會繼續執行名為 [執行查詢,以及將結果視覺化] 的動作。

  3. 在連線方塊中,提供下列資訊:

    屬性 說明
    連線名稱 連線的名稱
    驗證類型 要用於連線的驗證類型。 如需詳細資訊,請參閱對於輸出驗證新增驗證
    租用戶識別碼 您的 Microsoft Entra 租用戶。 注意:稍後會使用與目前連線相關聯的帳戶來傳送電子郵件。
  4. 完成時,請根據選取的驗證類型選取 [登入] 或 [新建]

  5. 在 [執行查詢,以及將結果視覺化] 動作方塊中,提供下列資訊:

    屬性 必填 Description
    訂用帳戶 Yes <Azure-subscription> Log Analytics 工作區或 Application Insights 應用程式的 Azure 訂用帳戶。
    資源群組 Yes <Azure-resource-group> Log Analytics 工作區或 Application Insights 應用程式的 Azure 資源群組。
    資源類型 Yes Log Analytics 工作區Application Insights 要從工作流程連線的資源類型。 此範例會在選取 [Log Analytics 工作區] 後繼續。
    資源名稱 Yes <Azure-resource-name> Log Analytics 工作區或 Application Insights 資源的名稱。
  6. 在 [查詢] 方塊中,輸入下列 Kusto 查詢,以從下列來源擷取指定的記錄資料:

    注意

    建立您自己的查詢時,請先確定查詢在 Log Analytics 中可正確運作,再將它們新增至 Azure 監視器記錄動作。

    • Log Analytics 工作區

      下列範例查詢會選取最後一天發生的錯誤、報告其總數,並以遞增順序排序。

      Event
      | where EventLevelName == "Error" 
      | where TimeGenerated > ago(1day)
      | summarize TotalErrors=count() by Computer
      | sort by Computer asc
      
    • Application Insights 資源

      下列範例查詢會選取最後一天內的失敗要求,並根據 operation_Id 識別碼將它們與作業發生的例外狀況相互關聯。 查詢接著會使用 autocluster() 演算法將結果分段。

      requests
      | where timestamp > ago(1d)
      | where success == "False"
      | project name, operation_Id
      | join ( exceptions
          | project problemId, outerMessage, operation_Id
      ) on operation_Id
      | evaluate autocluster()
      
  7. 針對 [時間範圍],選取 [在查詢中設定]

    下表描述 [時間範圍] 的選項:

    時間範圍 描述
    精確 動態提供開始時間和結束時間。
    相對 設定相對值,例如過去一小時、過去 12 小時等等。
    在查詢中設定 當查詢中包含 TimeGenerated 篩選時適用。
  8. 針對 [圖表類型],選取 [HTML 資料表]

  9. 儲存您的工作流程您 在設計師工具列上選取儲存

新增電子郵件動作

  1. 在您想要新增 Office 365 Outlook 動作的工作流程中,請遵循這些一般步驟來新增 名為傳送電子郵件 (V2)Office 365 Outlook 動作

  2. 在 [收件者] 方塊中,輸入收件者的電子郵件地址。 針對此範例,請使用您自己的電子郵件地址。

  3. 在 [主旨] 方塊中,輸入電子郵件的主旨,例如前幾大每日錯誤或失敗

  4. 按一下 [內文] 方塊內部,然後選取 [動態內容] 選項 (閃電圖示),以便從工作流程中先前的步驟選取輸出。

  5. 在動態內容清單中,於 [執行查詢,以及將結果視覺化] 底下,選取 [內文],其代表您先前在 Log Analytics 動作中輸入的查詢結果。

  6. 從 [進階參數] 清單,選取 [附件]

    [傳送電子郵件] 動作現在包含 [附件] 區段,其中包含 [附件名稱] 和 [附件內容] 屬性。

  7. 針對新增的屬性,遵循下列步驟:

    1. 在 [附件名稱] 方塊中,開啟動態內容清單。 在 [執行查詢,以及將結果視覺化] 下,選取 [附件名稱]

    2. 在 [附件內容] 方塊中,開啟動態內容清單。 在 [執行查詢,以及將結果視覺化] 底下,選取 [附件內容]

  8. 儲存您的工作流程您 在設計師工具列上選取儲存

測試工作流程

  1. 在工作流程功能表上,選取 [概觀]

  2. 在 [概觀] 工具列上,選取 [執行]> [執行]

  3. 工作流程完成時,請檢查您的電子郵件。

    注意

    工作流程會產生一封電子郵件,其中包含描述查詢結果集的 JPG 檔案。 如果查詢未傳回任何結果,則此工作流程將不會建立 JPG 檔案。

    針對 Log Analytics 工作區範例,您收到的電子郵件會具有類似下列範例的內文:

    Screenshot shows data report from a Log Analytics workspace in an example email.

    針對 Application Insights 資源,您收到的電子郵件會具有類似下列範例的內文:

    Screenshot shows data report from an Application Insights resource in an example email.

下一步