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

Add support for Metricbeat modules based on existing modules #12270

Closed
jsoriano opened this issue May 24, 2019 · 1 comment
Closed

Add support for Metricbeat modules based on existing modules #12270

jsoriano opened this issue May 24, 2019 · 1 comment
Assignees
Labels
enhancement Metricbeat Metricbeat Team:Integrations Label for the Integrations team v7.3.0

Comments

@jsoriano
Copy link
Member

Add a new kind of Metricbeat modules that can be created as a predefined configuration for an existing metricset, making it easier to share configurations for existing "generic" modules as prometheus or jolokia.

Mini-design proposal document: https://docs.google.com/document/d/1R_GULET8kLOozMhHdnmn68wRgKevxCfs2S2XwVMcNXw/edit?usp=sharing

@jsoriano jsoriano added enhancement discuss Issue needs further discussion. Metricbeat Metricbeat Team:Integrations Label for the Integrations team labels May 24, 2019
@jsoriano jsoriano self-assigned this May 24, 2019
@jsoriano jsoriano changed the title Add support for Metricbeat modules based in existing modules Add support for Metricbeat modules based on existing modules May 24, 2019
jsoriano added a commit to jsoriano/beats that referenced this issue Jun 3, 2019
All prometheus metrics should be under `prometheus.metrics`, fix it so
the metricset can be reused on light modules (elastic#12270).
jsoriano added a commit that referenced this issue Jun 3, 2019
All prometheus metrics should be under `prometheus.metrics`, fix it so
the metricset can be reused on light modules (#12270).
andrewvc pushed a commit to andrewvc/beats that referenced this issue Jun 12, 2019
All prometheus metrics should be under `prometheus.metrics`, fix it so
the metricset can be reused on light modules (elastic#12270).
@andresrc andresrc added v7.3.0 and removed discuss Issue needs further discussion. labels Jun 17, 2019
jsoriano added a commit that referenced this issue Jun 24, 2019
…12465)

Implements #12270.

Modify metricbeat modules registry to include an optional secondary modules source.
A modules registry uses the secondary source as a fallback when it cannot provide
the configuration for an specific metricset. Semantics of current methods are
maintained.

An implementation for a secondary source is provided. This implementation loads
modules from disk that depend on traditional registered modules. Once loaded,
a "registration" object can be obtained, what includes a metricset factory built
with the specific overrides needed to instantiate the final metricset.

Beats based on metricbeat can opt-in for this feature by adding
WithLightModules() to its beat.Creator.
This option is added to the licensed metricbeat, for that a new root command
is instantiated.
@jsoriano
Copy link
Member Author

Closing as initial implementation is ready and first module merged. Following changes will be done in separate issues and PRs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Metricbeat Metricbeat Team:Integrations Label for the Integrations team v7.3.0
Projects
None yet
Development

No branches or pull requests

2 participants