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

Report whether an agent is Fleet managed or standalone or unprivileged to components #4683

Open
cmacknz opened this issue May 6, 2024 · 3 comments
Assignees
Labels
Team:Elastic-Agent Label for the Agent team Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team

Comments

@cmacknz
Copy link
Member

cmacknz commented May 6, 2024

Allow components (specifically Beats sub-processes) to determine if they are connected to a standalone or a Fleet managed agent so that they can add this information to the User-Agent string. Additionally include whether the agent is unprivileged since it is cheap to add as part of this change.

Determining the privilege level is a single function call, for example see

Unprivileged: agentInfo.Unprivileged(),

Adding this information to the AgentInfo message in the control protocol is likely the best choice. https://github.com/elastic/elastic-agent-client/blob/ac72c3488d26b2b319cec87536d45eea35b81d17/elastic-agent-client.proto#L197-L210

// Agent information that the component might want to use for its events,
// including the package version, which components should report instead
// of their own version.
//
// Sent on component start up as part of StartUpInfo and on the first checkin
// expected response to the component.
message AgentInfo {
    // ID is the Elastic Agent's unique ID.
    string id = 1;
    // Version is the package version of the running Elastic Agent.
    string version = 2;
    // Snapshot is true when the running Elastic Agent is a snapshot version.
    bool snapshot = 3;
}
@cmacknz cmacknz added the Team:Elastic-Agent Label for the Agent team label May 6, 2024
@elasticmachine
Copy link
Collaborator

Pinging @elastic/elastic-agent (Team:Elastic-Agent)

@ycombinator ycombinator added Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team labels May 6, 2024
@elasticmachine
Copy link
Collaborator

Pinging @elastic/elastic-agent-control-plane (Team:Elastic-Agent-Control-Plane)

@elasticmachine
Copy link
Collaborator

Pinging @elastic/elastic-agent-data-plane (Team:Elastic-Agent-Data-Plane)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Team:Elastic-Agent Label for the Agent team Team:Elastic-Agent-Control-Plane Label for the Agent Control Plane team Team:Elastic-Agent-Data-Plane Label for the Agent Data Plane team
Projects
None yet
Development

No branches or pull requests

4 participants