Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Fleet] Add metadata to Agent #76844

Open
ruflin opened this issue Sep 7, 2020 · 9 comments
Open

[Fleet] Add metadata to Agent #76844

ruflin opened this issue Sep 7, 2020 · 9 comments
Labels
Team:Fleet Team label for Observability Data Collection Fleet team

Comments

@ruflin
Copy link
Member

ruflin commented Sep 7, 2020

Each agent has a set of metadata it provides out of the box. Users should be able to add additional metadata to an Agent as key / value pairs.

With the support of providers and variables as part of the inputs in the Elastic Agent elastic/beats#19225, the Agent metadata becomes more important to enrich input configuration or make decisions on what configurations to run. In this context the metadata of an Agent assigned by Fleet should be populated to the Agent and part of the local provider. (@blakerouse which provider does make most sense here?)

An example use case here is heartbeat monitors. Multiple agents are enrolled with different regions. The geo data could be set as metadata on the agent itself which is then used to enrich events and decide which inputs/monitors should be run.

@ruflin ruflin added the Team:Fleet Team label for Observability Data Collection Fleet team label Sep 7, 2020
@elasticmachine
Copy link
Contributor

Pinging @elastic/ingest-management (Team:Ingest Management)

@blakerouse
Copy link

@ruflin I could see this working across multiple providers depending on the context.

I was thinking that geo would be its own provider, but we could make it part of the agent provider then all the information about geo and metadata information from Fleet could come into the agent provider.

@mukeshelastic
Copy link

I am curious if we have defined the UX for CRUDing metadata to agent yet. Ideally, we can start with uptime use case and work backwards to define metadata UX. @mostlyjason fyi

@simitt
Copy link
Contributor

simitt commented Jan 26, 2021

@ruflin is this required for Cloud support?

@ruflin
Copy link
Member Author

ruflin commented Jan 27, 2021

@simitt No

@simitt
Copy link
Contributor

simitt commented Jan 28, 2021

thanks, I removed it from the TODO list for hosted-elastic-agent.

@ph ph removed the v7.12.0 label Feb 17, 2021
@jen-huang jen-huang changed the title [Ingest Manager] Add metadata to Agent [Fleet] Add metadata to Agent Apr 27, 2021
@scottdfedorov
Copy link

I am curious if we have defined the UX for CRUDing metadata to agent yet. Ideally, we can start with uptime use case and work backwards to define metadata UX. @mostlyjason fyi

Hey, just a evangelist user working on an upgrade to fleet for my (small) org and was looking for this functionality. Thought I might add my $0.02.

The Custom logs integration allows additional "Custom configurations" that allows adding some (?) additional items. I tested with adding fields and it works. If this could be added to the policy and/or specific integrations, think it would solve the use case and not require the inclusion of processors?

image

Big fan,
Scotty

@mostlyjason
Copy link
Contributor

@scottdfedorov yes that's true you can add custom YAML configuration in the custom logs configuration. I'd love to learn more about your use case and how you plan to use this feature. Do you want this capability to be available for other integrations? Do you just need custom fields or processors as well? I'd suggest opening a separate issue and mentioning me on it.

I want to clarify the topic of this issue. It regards adding metadata to the Elastic Agent so it can be used as variable values with dynamic inputs https://www.elastic.co/guide/en/fleet/current/dynamic-input-configuration.html. It doesn't necessarily mean adding metadata to the events published by Elastic Agent, although that is an option.

@scottdfedorov
Copy link

Oh, my apologies. I did definitely misunderstand the topic of the issue, was referring to metadata for the output. I'll open another separate issue, but the use case I was looking for here was simple. No real need to additional processors. (We try to do all processing in Logstash (not supported, I know) or Ingest Node Pipelines.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Team:Fleet Team label for Observability Data Collection Fleet team
Projects
None yet
Development

No branches or pull requests

8 participants