Add Logs data stream for collecting Azure Functions#6417
Add Logs data stream for collecting Azure Functions#6417devamanv merged 52 commits intoelastic:mainfrom devamanv:azure-functions-integration
Conversation
packages/azure_functions/data_stream/functionapplogs/agent/stream/azure-eventhub.yml.hbs
Show resolved
Hide resolved
packages/azure_functions/data_stream/functionapplogs/elasticsearch/ingest_pipeline/default.yml
Outdated
Show resolved
Hide resolved
packages/azure_functions/data_stream/functionapplogs/fields/package-fields.yml
Outdated
Show resolved
Hide resolved
🌐 Coverage report
|
| ignore_missing: true | ||
| - rename: | ||
| field: json.properties.functionInvocationId | ||
| target_field: azure.function.function_invocation_id |
There was a problem hiding this comment.
I wonder if azure.function.function_invocation_id is redundant and something like azure.function.invocation_id make more sense, this applies to azure.function.function_name too. What do you think?
There was a problem hiding this comment.
Yes, that's a fair point. I will change that in the next commit.
packages/azure_functions/data_stream/functionapplogs/elasticsearch/ingest_pipeline/default.yml
Outdated
Show resolved
Hide resolved
|
@devamanv - Please find my comments below after installing the enabling the data collection for azure functions.
|
Events from Azure are usually slow, and this delay is expected and could take anywhere between a few minutes to an hour, reference. Part of the reason is the fact that Platform logs are only collected when there's a corresponding diagnostic setting enabled, source. This usually takes a few minutes for the logs to be routed to a destination, which happens to be Eventhub in this case.
The assets(dashboards) will be created as a separate PR. The assets work is already in progress. I have updated the description accordingly.
I have updated the logo to match the one in the Azure Portal, please take a look. |
| format_version: 2.5.1 | ||
| name: azure_functions | ||
| title: "Azure Functions" | ||
| version: 0.1.0 |
There was a problem hiding this comment.
Can we make the initial release version as experimental 0.0.1 until the Kibana dashboard PR is getting merged. Otherwise looks good !
There was a problem hiding this comment.
Changed the release as experimental and the initial package version to 0.0.1.
To add extra details to what @devamanv said, here's how to check what happens between event creation on Azure and ingestion on Elasticsearch using the document fields. Here's a KB article I put together a few months ago. AFAIK it's unavailable as a public page, so I'm adding it as a screenshot. We can turn it into a public resource if you think it can be helpful to a broader audience. |
Update the ECS version to use the v8.8.0 tag instead of using the 8.8 branch. More precise dependencies should enable more predictable builds.
Align the content of the `sample_event.json` file with the new field names.
…egrations into azure-functions-integration
|
Package azure_functions - 0.0.1 containing this change is available at https://epr.elastic.co/search?package=azure_functions |

What does this PR do?
The PR contains changes to add a new datastream
functionapplogsthat contains all the field mappings, ingest pipelines, documentations needed to ingest the Azure Functions logs into Elasticsearch.Note: Dashboards assets to be added in a separate PR.
Checklist
changelog.ymlfile.How to test this PR locally
elastic-packageelastic-package testfrom the integrations/packages/azure_functions directoryRelated issues
Screenshots