Monitoring Azure Functions with Azure Monitor Logs (2024)

  • Article

Azure Functions offers an integration with Azure Monitor Logs to monitor functions. This article shows you how to configure Azure Functions to send system-generated and user-generated logs to Azure Monitor Logs.

Azure Monitor Logs gives you the ability to consolidate logs from different resources in the same workspace, where it can be analyzed with queries to quickly retrieve, consolidate, and analyze collected data. You can create and test queries using Log Analytics in the Azure portal and then either directly analyze the data using these tools or save queries for use with visualizations or alert rules.

Azure Monitor uses a version of the Kusto query language used by Azure Data Explorer that is suitable for simple log queries but also includes advanced functionality such as aggregations, joins, and smart analytics. You can quickly learn the query language using multiple lessons.

Note

Integration with Azure Monitor Logs is currently in public preview. Not supported for function apps running on version 1.x.

Setting up

  1. From the Monitoring section of your function app in the Azure portal, select Diagnostic settings, and then select Add diagnostic setting.

    Monitoring Azure Functions with Azure Monitor Logs (1)

  2. In the Diagnostics settings page, under Category details and log, choose FunctionAppLogs.

    The FunctionAppLogs table contains the desired logs.

  3. Under Destination details, choose Send to Log Analytics and then select your Log Analytics workspace.

  4. Enter a Diagnostic settings name, and then select Save.

    Monitoring Azure Functions with Azure Monitor Logs (2)

User-generated logs

To generate custom logs, use the logging statement specific to your language. Here are sample code snippets:

  • C#
  • Java
  • JavaScript
  • PowerShell
  • Python
log.LogInformation("My app logs here.");

Querying the logs

To query the generated logs:

  1. From your function app, select Diagnostic settings.

  2. From the Diagnostic settings list, select the Log Analytics workspace that you configured to send the function logs to.

  3. From the Log Analytics workspace page, select Logs.

    Azure Functions writes all logs to the FunctionAppLogs table under LogManagement.

    Monitoring Azure Functions with Azure Monitor Logs (3)

Here are some sample queries:

All logs

FunctionAppLogs| order by TimeGenerated desc

Specific function logs

FunctionAppLogs| where FunctionName == "<Function name>" 

Exceptions

FunctionAppLogs| where ExceptionDetails != "" | order by TimeGenerated asc

Next steps

Monitoring Azure Functions with Azure Monitor Logs (2024)
Top Articles
Latest Posts
Article information

Author: Barbera Armstrong

Last Updated:

Views: 6097

Rating: 4.9 / 5 (59 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Barbera Armstrong

Birthday: 1992-09-12

Address: Suite 993 99852 Daugherty Causeway, Ritchiehaven, VT 49630

Phone: +5026838435397

Job: National Engineer

Hobby: Listening to music, Board games, Photography, Ice skating, LARPing, Kite flying, Rugby

Introduction: My name is Barbera Armstrong, I am a lovely, delightful, cooperative, funny, enchanting, vivacious, tender person who loves writing and wants to share my knowledge and understanding with you.