Skip to main content

Azure Functions

Thumbnail icon

Azure Functions is a serverless solution that allows you to write less code, maintain less infrastructure, and save on costs. This integration helps in monitoring the health, tracking executions, and estimating cost of your function apps.

Log and Metric types

For Azure Functions, you can collect the following logs and metrics:

  • Function app logs. These are custom application logs that your function code writes. For more information on logs schema, refer to Azure documentation.

To learn more about configuring monitoring for azure functions, refer to Azure documentation

  • Azure Functions specific metrics. These are metrics specific to Functions like execution count and execution units. For more information on supported metrics, refer to Azure documentation.

  • General App Service metrics. Metrics which App Service platform implements. These metrics are available in Microsoft.Web/sites namespace. For more information on supported metrics, refer to Azure documentation.

Setup

Azure service sends monitoring data to Azure Monitor, which can then stream data to Eventhub. Sumo Logic supports:

You must explicitly enable diagnostic settings for each Azure Functions you want to monitor. Diagnostic Settings are not supported for function apps running on version 1.x. You can forward logs to the same event hub provided they satisfy the limitations and permissions as described here.

When you configure the event hubs source or HTTP source, plan your source category to ease the querying process. A hierarchical approach allows you to make use of wildcards. For example: Azure/FunctionApp/Logs, Azure/FunctionApp/Metrics.

Configure metrics collection

In this section, you will configure a pipeline for shipping metrics from Azure Monitor to an Event Hub, on to an Azure Function, and finally to an HTTP Source on a hosted collector in Sumo Logic.

  1. Configure an HTTP Source.
  2. Configure and deploy the ARM Template.
  3. Export metrics to Event Hub. Perform below steps for each Azure Functions that you want to monitor.
    • Choose Stream to an event hub as destination.
    • Select AllMetrics.
    • Use the Event hub namespace created by the ARM template in Step 2 above. You can create a new Event hub or use the one created by ARM template. You can use the default policy RootManageSharedAccessKey as the policy name.

Configure logs collection

In this section, you will configure a pipeline for shipping diagnostic logs from Azure Monitor to an Event Hub.

  1. To set up the Azure Event Hubs cloud-to-cloud source in Sumo Logic portal, refer to our Azure Event Hubs source documentation.
  2. To create the Diagnostic settings in Azure portal, refer to the Azure documentation. Perform below steps for each Azure Functions that you want to monitor.
    • Choose Stream to an event hub as the destination.
    • Select Function Application Logs.
    • Use the Event hub namespace and Event hub name configured in previous step in destination details section. You can use the default policy RootManageSharedAccessKey as the policy name.

Troubleshooting

Azure Event Hubs Source

Common error types are described here.

You can try restarting the source for ThirdPartyConfig errors.

HTTP Logs and Metrics Source used by Azure Functions

To troubleshoot metrics collection, follow the instructions in Collect Metrics from Azure Monitor > Troubleshooting metrics collection.

Legal
Privacy Statement
Terms of Use

Copyright © 2023 by Sumo Logic, Inc.