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

Provide binders for Git and Build information #3154

Open
mafr opened this issue May 1, 2022 · 7 comments
Open

Provide binders for Git and Build information #3154

mafr opened this issue May 1, 2022 · 7 comments
Labels
help wanted An issue that a contributor can help us with

Comments

@mafr
Copy link

mafr commented May 1, 2022

Description
There has been some discussion at the Spring Boot project about exposing information like the Git commit ID and Maven coordinates as metrics, similar in style to the existing JvmInfoMetrics binder. For consistency, we would provide the same information that Spring Boot's Actuator exposes on its /actuator/info endpoint.

The binders would receive the data via constructor arguments and add a constant gauge with tags for all attributes we want to expose. If some values are null, we would add a marker string ("unknown", "null", "N/A") to make sure all tags are always present.

Example:

git_info{app="some-service", branch="main", id="cafecafe", time="2022-04-26T18:39:18Z"} 1.0
build_info{app="some-service", name="Some Service", artifact="some-service", group="org.example", version="1.7", time="2022-04-28T12:01:07Z"} 1.0

This issue is intended to discuss whether this is a worthwhile addition and to discuss the design if the team decides to proceed.

Rationale
Adding metrics binders to Micrometer would provide standardization of these metrics across all users of Micrometer, not just Spring Boot. The new metrics would be useful in Grafana dashboards, for example, to display which exact commit/version is currently deployed.

Additional context

@jonatan-ivanov
Copy link
Member

@shakuzen fyi

@jonatan-ivanov
Copy link
Member

@mafr Would you be up to opening a PR for this in Micrometer?
It would be somewhat similar to the PR you opened for Boot, except we could copy the whole/partial GitProperties/BuildProperties classes.
Then once Micrometer has this, we can add auto-configuration to Boot.

@jonatan-ivanov jonatan-ivanov added the help wanted An issue that a contributor can help us with label Aug 10, 2023
@ardetrick
Copy link

Hi @jonatan-ivanov - I've never made a contribution here before but I saw the "help wanted" tag and figured I would give it a try. Would appreciate your opinion on my PR and if it meets the desires and goals of this issue. Thanks!

@ardetrick
Copy link

Hi @jonatan-ivanov and @shakuzen - was wondering if either of you would be willing to take a look the PR I opened for this issue. Would great appreciate your opinions or an update on if this change is still of interest to micrometer. Thanks!

@marcingrzejszczak
Copy link
Contributor

@ardetrick we will look into this ASAP, sorry for the big delay

@ardetrick
Copy link

Thanks @marcingrzejszczak - I know this is a busy time of the year but I eagerly await your team's feedback when you get a chance to take a look.

@ardetrick
Copy link

@marcingrzejszczak just want to put this back on you radar - thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted An issue that a contributor can help us with
Projects
None yet
Development

No branches or pull requests

4 participants