-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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 common tags to Micrometer Meter Registry #644
Comments
This change updates the dependency versions for the project. [cloudfoundry/java-buildpack#644] Signed-off-by: Ben Hale <bhale@pivotal.io>
This change adds support for a Micrometer MeterFilter that populates all metrics with tags containing information related to the CF environment that it is running in. The default values, extracted from the container environment can be overridden by environment variables. [cloudfoundry/java-buildpack#644] Signed-off-by: Ben Hale <bhale@pivotal.io>
|
This Spring Boot issue discusses a similar request. I've closed that one for now so we can focus on a build-pack solution. If it turns out that the feature would be better off in Spring Boot, let me know and we can reconsider. |
|
@tzolov and @shakuzen Can you please look over the following list and let me know if it meets your requirements and any concerns you have with it. @snicoll As explained to me, there is no problem with the number of tags, just the cardinality of each tag as that is what drives the combinatorial explosion of time series. Most of these tags are stable for a given application with the exception of instance index and version. Instance index is typically a single digit or small double digit cardinality, and version is explicitly and emphatically not the version GUID, but rather a value derived from running frigga against the name. That should minimize the cardinality of that tag to the extent possible while still being useful.
Note the tags listed here will only be added if they have not already been specified by the application in some other way. |
|
Just pushed an application called |
This change updates the Metric Writer to remove integration with the now EOL'd Metrics Forwarder and instead add a set of Cloud Foundry-specific tags to Micrometer metrics. [resolves #644] Signed-off-by: Ben Hale <bhale@pivotal.io>
|
This change broke our metrics exporting. PCF 2.5. Spring 2.1.xx (recent). Exporting via Micrometer to Graphite. Graphite config was to append all tags/values into the path. Paths were then displayed on a Grafana dashboard. We ended up with:
Took us a while to figure out if it was our code, PCF itself, some other dependency. Finally tracked it down to the build pack. The values still reported to Graphite, but to a different location due to config. This caused all the Grafana dashboards to no longer report data, as the data is now in a new location. Solution was to lock in the buildpack version in the manifest.yml to 4.20 with:
This stopped getting the current master for java-buildpack, and got us out of this change. It wasn't apparent how to disable this feature, as it interferes with our metrics. |
|
@bhoogter Can you please open a separate issue with this description in it? |
|
I wonder if |
|
Looks this may have broken CF tasks. Getting more specific information, but seeing the following in the stack trace: |
|
A heads up to everyone who requested this support (@philwebb, @tzolov, @shakuzen, and others), it appears that this change being enabled by default is causing widespread problems for customers with many different kinds of metrics monitoring (e.g. dashboards, auto-scaling, etc.). I'm going to disable it by default but it's unclear to me, given how many people change defaults, how many people will ever enable it. It's quite possible that it'll end up being removed due to lack of usage which is quite unfortunate. |
Custom
MeterFilterthat examines each id and only adds new tags if they don't exist.Also any
@Bean MeterFiltergets automatically registered with the registry by Boot.This filter should have least precedence.
Tags:
CF_APP_
if present, use these
if not present, use frigga
cf.instance.idUse dot separators for multi-word tag names.
The text was updated successfully, but these errors were encountered: