Add Azure tutorial that shows Elastic Agent#2174
Conversation
|
A documentation preview will be available soon: |
We have four Azure integrations, each with one or more data streams:
For the Azure Logs, from my experience, the most used ones are the Activity logs and the two Active Directory logs (sign-in and audit logs). I would pick one from Sign-in or Activity logs. |
|
@zmoog From reading our Azure Logs integration docs, it looks like the steps for exporting activity logs to an event hub (using legacy collection) are quite different from exporting Active Directory logs. That makes me wonder if we should cover activity and Active Directory logs. On the other hand, the steps for exporting Active Directory logs look more straightforward and recommending something called legacy collection seems like a bad idea. WDYT? |
IMO we should cover activity or Active Directory logs.
Activity and Directory logs are VERY similar from the integration perspective; the only difference is the source of the logs. Here's a quick diagram I am working on for the Azure Logs revamp I started today: |
|
About the choice "activity logs vs. Active Directory logs" as integration to showcase alongside Azure Billing, we can have a quick tour of both during our zoom call later today. |
|
About what users need to do to send logs to an event hub, we can check what I am writing for the already mentioned Azure Logs doc revamp. I believe there's an overlap between the two documents, but you can probably give me some advice about what goes in the tutorial and what goes in the general doc. |
I do not have a significant experience in the Native Azure Integration, but AFAIK they are accurate. |
|
@zmoog The content in this topic is ready to review: https://observability-docs_2174.docs-preview.app.elstc.co/guide/en/observability/master/monitor-azure-elastic-agent.html. I think it's OK for the tutorial to focus on the big stuff and point to users for more detail in the integrations documentation. I'm not going to try to sync up the tasks we cover because the tutorial style is different and the tasks won't stay in sync anyhow. So try to review for accuracy, not total consistency with what you've written. :-) I have some remaining questions for you to consider as you review the content:
|
|
@zmoog I am running into an error when I try to test the steps in the tutorial about using the native integration. When I try to create an Elasticsearch (Elastic Cloud) resource, I get the following message: I really wanted to get this done today, so I deleted all my deployments on cloud, but I am still getting the same message. I even tried creating a deployment in Elastic Cloud on Azure to "grease the skids" but no luck. I feel like I saw something somewhere about issues related to our elastic cloud accounts, but can't remember the details. Can you help? I'm blocked on testing the native steps until I figure out what's wrong. |
Forecast data stopped working reliably right after we shipped the upgrade. There is a backport in progress to 7.17.7, but version 8.4.2 is required to have it working across the existing Azure account types. What about recommending using the latest Agent version for 7.x and 8.x to get support for the latest API changes from Azure? |
Not 100% sure here. I believe app registration is still the way to go, but I will double-check if the upcoming changes will affect app registration or is an authentication library detail only. I didn't know this post, but we were aware of the in-progress transition to the Microsoft Identity service due to changes in the Azure SDK for Go we use to access Azure services from integration and Beats. Thank you for bringing this up! The post adds more details to the context. The new Azure SDK for Go library that supports Microsoft Identity 1 requires Go version 1.18. Fortunately Go 1.18 landed in 7.x and 8.x and we can finally move forward with the plans to switch to Footnotes
|
I understand that Azure Billing Metrics only requires the built-in "Billing Reader" role assignment. The "Reader" role is a broader role that gives the app access to a much wider set of information. The "Reader" role gives the app access to 5991 individual permissions across multiple Azure services. The "Billing Reader" rolprovides the app withthe app access to 86 permissions. You can check the permissions list by:
Azure Billing Metrics only requires a handful of permissions. I think we could write instructions about how to write a custom role with the strictly required permissions only. I believe using the Azure built-in role is okay from a security standpoint and can provide a better user experience. However, we could also provide a list with all the permissions required, so security-inclined customers have the option to nail down the exact permission set the app needs to work. @dedemorton WDYT? |
Yeah, it does not look good. This probably happens because the Logs stream page looks for a field named "message" by default, but Azure logs (and probably also AWS logs) don't have such a field. I think this can be customized in the Logs stream option, so we and the users can pick an existing and meaningful field (for example, "category" or something specific to this log category). |
Yeah, we added tables with a detailed list of supported log categories in the recent Azure Logs documentation updates. Maybe we can point users to those tables to get the most up-to-date version while we update existing integration and add new ones? Not sure we have Activity logs yet but are working on it so we can add them. |
The connection string is on the event hub namespace: Event hub namespace > NAMESPACE > Shared access policies > POLICY > key > Connection string Since we met last, I expanded the even hub setup portion in elastic/integrations#4300 to better describe this step. Let me know if you think the doc describes this step well enough. |
|
@zmoog OK, I think I've figured out how to resolve most of my open issues. I have a couple follow-up questions:
|
I used
I don't have a list ready now, but I think the log categories listed are supported. Once complete, the list with the supported log categories will show up in the internal integration doc in Kibana and https://docs.elastic.co/integrations/azure/activitylogs. |
|
@zmoog And now for the latest chapter in the saga "All the Azure Monitoring stuff that doesn't work as expected": I am not getting activity logs when I use the native Azure integration. The diagnostics settings in azure look OK (I think): I followed the steps in the tutorial and deployed the resource before enabling Logs & Metrics. Do I need to redeploy after enabling those options? (I am seeing platform logs, so I don't think this is my problem.) |
|
@zmoog Native steps are updated! I'm not going to worry about the activity logs not showing up right now, but someone needs to investigate to see if there's a software issue or the steps are wrong. This tutorial is ready for a final review. Thanks again for your help with this. |
Hey @dedemorton, I'll check the activity logs and create an issue if something is wrong or get back to you if there's something related to the tutorial. |
zmoog
left a comment
There was a problem hiding this comment.
LGTM. I just added a couple of non-blocking comments.
Adds new tutorial based on the existing one plus updates the native tutorial steps. (cherry picked from commit c2ce10c)
Adds new tutorial based on the existing one plus updates the native tutorial steps. (cherry picked from commit c2ce10c)


Preview: https://observability-docs_2174.docs-preview.app.elstc.co/guide/en/observability/master/monitor-azure-elastic-agent.html
Open issues and questions:
Decision: We will cover activity logs or Active Directory logs...not both. DeDe will make final decision.
Outcome: DeDe and Maurizio met to go through each scenario. DeDe will go through the steps and document them.
Decision: We'll assume that these docs are correct and point to them.
Plus all the comments here: #2174 (comment)
TODO before merging:
TODO after merging: