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

Added support for couchdb v3. #26950

Open
wants to merge 42 commits into
base: main
Choose a base branch
from
Open

Added support for couchdb v3. #26950

wants to merge 42 commits into from

Conversation

StephanU
Copy link

@StephanU StephanU commented Jul 19, 2021

What does this PR do?

Added Metricbeat support for CouchDB version 3. It seems like the result format of the couchdb stats endpoints did not change from version 2 to 3 (the release notes do not mentioned changes to the stats endpoints).
So I'm just reusing the stats format of version 2.

Why is it important?

Added support for the lastest major CouchDB version 3.

Checklist

  • [x ] My code follows the style guidelines of this project
  • [x ] I have commented my code, particularly in hard-to-understand areas
  • [ ] I have made corresponding changes to the documentation
  • [ ] I have made corresponding change to the default configuration files
  • [ ] I have added tests that prove my fix is effective or that my feature works
  • [ x] I have added an entry in CHANGELOG.next.asciidoc or CHANGELOG-developer.next.asciidoc.

How to test this PR locally

Related issues

@botelastic botelastic bot added the needs_team Indicates that the issue/PR needs a Team:* label label Jul 19, 2021
@elasticmachine
Copy link
Collaborator

elasticmachine commented Jul 19, 2021

❕ Build Aborted

The PR is not allowed to run in the CI yet

the below badges are clickable and redirect to their specific view in the CI or DOCS
Pipeline View Test View Changes Artifacts preview

Expand to view the summary

Build stats

  • Start Time: 2023-10-18T12:37:52.524+0000

  • Duration: 5 min 49 sec

Steps errors 2

Expand to view the steps failures

Load a resource file from a library
  • Took 0 min 0 sec . View more details here
  • Description: approval-list/elastic/beats.yml
Error signal
  • Took 0 min 0 sec . View more details here
  • Description: githubApiCall: The REST API call https://api.github.com/orgs/elastic/members/StephanU return the message : java.lang.Exception: httpRequest: Failure connecting to the service https://api.github.com/orgs/elastic/members/StephanU : httpRequest: Failure connecting to the service https://api.github.com/orgs/elastic/members/StephanU : Code: 404Error: {"message":"User does not exist or is not a member of the organization","documentation_url":"https://docs.github.com/rest/orgs/members#check-organization-membership-for-a-user"}

🤖 GitHub comments

Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

  • /test : Re-trigger the build.

  • /package : Generate the packages and run the E2E tests.

  • /beats-tester : Run the installation tests with beats-tester.

  • run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

@StephanU
Copy link
Author

I am not allowed to add labels to the PR.

@ChrsMark
Copy link
Member

cc: @sayden

@ChrsMark ChrsMark added the Team:Integrations Label for the Integrations team label Jul 26, 2021
@elasticmachine
Copy link
Collaborator

Pinging @elastic/integrations (Team:Integrations)

@botelastic botelastic bot removed the needs_team Indicates that the issue/PR needs a Team:* label label Jul 26, 2021
@mergify
Copy link
Contributor

mergify bot commented Aug 3, 2021

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/master
git push upstream master

@sayden sayden self-requested a review August 5, 2021 14:49
@mergify
Copy link
Contributor

mergify bot commented Aug 11, 2021

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/master
git push upstream master

@mergify
Copy link
Contributor

mergify bot commented Aug 19, 2021

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/master
git push upstream master

Copy link
Contributor

@sayden sayden left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @StephanU 🙂 Thanks for contributing with this. Please, can you create a V3.go instead of the current implementation? The idea is to make it explicit even on the filesystem instead of "implicit" (hidden) in a switch case.

Redis and MySQL modules also have the ability to test multiple versions of the same product using docker compose. Do you think you can take a quick look to add the same functionality here, please? 🙂

metricbeat/module/couchdb/server/server.go Outdated Show resolved Hide resolved
@StephanU
Copy link
Author

StephanU commented Sep 7, 2021

I added support for testing multiple versions of CouchDB. I tested the startup of the docker images by calling export COUCHDB_VERSION=<version> && docker-compose -up.
Calling export MODULE=couchdb && mage test runs successfully but it seems as if it does not test all configured versions but only one. How can I run tests for all configured versions?

@StephanU StephanU requested a review from sayden September 7, 2021 07:29
@mergify
Copy link
Contributor

mergify bot commented Sep 7, 2021

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/master
git push upstream master

@mergify
Copy link
Contributor

mergify bot commented Sep 13, 2021

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/master
git push upstream master

@mergify
Copy link
Contributor

mergify bot commented Sep 22, 2021

This pull request does not have a backport label. Could you fix it @StephanU? 🙏
To fixup this pull request, you need to add the backport labels for the needed
branches, such as:

  • backport-v./d./d./d is the label to automatically backport to the 7./d branch. /d is the digit

NOTE: backport-skip has been added to this pull request.

@mergify mergify bot added the backport-skip Skip notification from the automated backport with mergify label Sep 22, 2021
@sayden sayden added backport-skip Skip notification from the automated backport with mergify and removed backport-skip Skip notification from the automated backport with mergify labels Sep 23, 2021
@belimawr
Copy link
Contributor

@belimawr @sayden Can you please take a fresh look at this PR to see what needs done. Support for couchdb v3 is a show stopper for my company. And thanks @StephanU for your presistence.

I'll try to get someone with knowledge about couchdb to look at it.

@belimawr
Copy link
Contributor

@elastic/obs-service-integrations could some look at this PR?

@sayden
Copy link
Contributor

sayden commented Mar 24, 2023

If the output format is exactly the same than in CouchbDB v2 (it seems it is) and the dashboards are still working (it will be nice to see a screenshot of the dashboard attached to the PR as reference), this PR is good to go without any more changes.

@StephanU
Copy link
Author

StephanU commented Mar 24, 2023

I'm running Kibana 7.13.2 (including my changes) and CouchDB 3.3.1
Bildschirm­foto 2023-03-24 um 10 16 08

Copy link
Contributor

@sayden sayden left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@sayden
Copy link
Contributor

sayden commented Mar 30, 2023

@bturquet can your re-route this to the appropriate team to merge, please? I think it is ready to merge 🙂

@StephanU StephanU requested a review from a team as a code owner June 5, 2023 09:22
@mergify
Copy link
Contributor

mergify bot commented Oct 9, 2023

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/main
git push upstream master

Copy link
Contributor

mergify bot commented Nov 12, 2023

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/main
git push upstream master

@elasticmachine
Copy link
Collaborator

elasticmachine commented Nov 17, 2023

❕ Build Aborted

Either there was a build timeout or someone aborted the build.

the below badges are clickable and redirect to their specific view in the CI or DOCS
Pipeline View Test View Changes Artifacts preview

Expand to view the summary

Build stats

  • Duration: 5 min 33 sec

🤖 GitHub comments

Expand to view the GitHub comments

To re-run your PR in the CI, just comment with:

  • /test : Re-trigger the build.

  • /package : Generate the packages and run the E2E tests.

  • /beats-tester : Run the installation tests with beats-tester.

  • run elasticsearch-ci/docs : Re-trigger the docs validation. (use unformatted text in the comment!)

Copy link
Contributor

mergify bot commented Apr 15, 2024

This pull request is now in conflicts. Could you fix it? 🙏
To fixup this pull request, you can check out it locally. See documentation: https://help.github.com/articles/checking-out-pull-requests-locally/

git fetch upstream
git checkout -b master upstream/master
git merge upstream/main
git push upstream master

@StephanU
Copy link
Author

Happy belated 3rd birthday. ;)

Copy link
Contributor

@harnish-elastic harnish-elastic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-skip Skip notification from the automated backport with mergify Team:Service-Integrations Label for the Service Integrations team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support for couchdb 3