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

Metricbeat SQL Helper #9416

Closed
12 tasks
sayden opened this issue Dec 6, 2018 · 4 comments
Closed
12 tasks

Metricbeat SQL Helper #9416

sayden opened this issue Dec 6, 2018 · 4 comments
Labels
discuss Issue needs further discussion. enhancement Metricbeat Metricbeat module Team:Integrations Label for the Integrations team

Comments

@sayden
Copy link
Contributor

sayden commented Dec 6, 2018

Some of our modules for SQL databases rely on plain SQL queries to fetch metrics information. Golang has the sql driver which should help in creating a SQL helper that just accepts queries and parses information for metricbeat.

There's a work already done in MS SQL metricbeat module that uses a similar approach, the first idea is to abstract this code from MSSQL module.

We have seen that if this is develop, the vendor folder in MySQL module should be removed https://github.com/elastic/beats/tree/master/metricbeat/module/mysql/vendor

We still need to discuss if this helper is going to be released only as helper of other modules or with a sql-module too but in any case, if a module if going to rely 90% of its functionality on this helper, it needs to follow a common modula GA checklist.

SQL Helper release checklist

This checklist is intended for Devs which create or update a module to make sure modules are consistent.

Modules

For a metricset to go GA, the following criterias should be met:

  • Supported versions are documented
  • Supported operating systems are documented (if applicable)
  • Integration tests exist
  • System tests exist
  • Automated checks that all fields are documented
  • Documentation
  • Fields follow ECS and naming conventions
  • Dashboards exists (if applicable)
  • Kibana Home Tutorial (if applicable)

Metricbeat module

  • Example data.json exists and an automated way to generate it exists (go test -data)
  • Test environment in Docker exist for integration tests

For this particular Metricbeat Helper

  • Remove vendor folder from MySQL module once it is migrated to use the helper
@sayden sayden added enhancement module Metricbeat Metricbeat Team:Integrations Label for the Integrations team labels Dec 6, 2018
@elasticmachine
Copy link
Collaborator

Pinging @elastic/infrastructure

@sayden sayden added the discuss Issue needs further discussion. label Dec 6, 2018
@sayden
Copy link
Contributor Author

sayden commented Jan 10, 2019

Here I'll leave some links to comments that will help in the development of this module / helper:

#9826 (comment)

@jsoriano jsoriano mentioned this issue Dec 11, 2019
18 tasks
@jsoriano
Copy link
Member

#13257 has been merged with an initial version of a generic module for SQL and I have created #15048 as follow up. I am wondering now about the duplication with this issue.

Should we keep both and maintain this one for a helper? (a helper could still be helpful on the sql modules we already have)

Or we only continue only with the module and I close #15048 as duplicated of this issue (#9416) and get it updated.

@sayden
Copy link
Contributor Author

sayden commented Jan 17, 2020

Let's close this issue. It's older so it'll be less relevant. I think to better leave the Helper for a moment in future where we see a short-term need for it.

@sayden sayden closed this as completed Jan 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discuss Issue needs further discussion. enhancement Metricbeat Metricbeat module Team:Integrations Label for the Integrations team
Projects
None yet
Development

No branches or pull requests

3 participants