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

Enhanced Observability #25476

Open
7 of 15 tasks
Tracked by #35776
jonatan-ivanov opened this issue Mar 2, 2021 · 4 comments
Open
7 of 15 tasks
Tracked by #35776

Enhanced Observability #25476

jonatan-ivanov opened this issue Mar 2, 2021 · 4 comments
Assignees
Labels
theme: observability Issues related to observability type: epic An issue tracking a large piece of work that will be split into smaller issues
Milestone

Comments

@jonatan-ivanov
Copy link
Member

jonatan-ivanov commented Mar 2, 2021

This is a placeholder issue to group smaller tasks together to provide better Observability support for Spring Boot users.

Info enhancements

See:

Health enhancements

Spring Security enhancements

  • /whoami endpoint: show principal and granted authorities

The list is still in progress and very likely to evolve in the near future.

@spring-projects-issues spring-projects-issues added the status: waiting-for-triage An issue we've not yet triaged label Mar 2, 2021
@scottfrederick scottfrederick added theme: observability Issues related to observability type: enhancement A general enhancement type: epic An issue tracking a large piece of work that will be split into smaller issues and removed status: waiting-for-triage An issue we've not yet triaged type: enhancement A general enhancement labels Mar 2, 2021
@scottfrederick scottfrederick added this to the 2.x milestone Mar 2, 2021
@philwebb philwebb modified the milestones: 2.x, 3.x Aug 19, 2022
@philwebb philwebb mentioned this issue Jun 7, 2023
31 tasks
@dsyer
Copy link
Member

dsyer commented Nov 13, 2023

The activeProfiles is already exposed in the /env endpoint.

@jonatan-ivanov
Copy link
Member Author

Good point, today I was implementing it and I realized that if I don't set the active profiles property but set spring.profiles.default, then environment.getActiveProfiles() will be empty and the profle I set for default will be used. I think on the info endpoint it would be more useful to return the "effectively used profiles" instead of the value of environment.getActiveProfiles(). Something like this I guess:

String[] getEffectiveProfiles() {
    return ObjectUtils.isEmpty(environment.getActiveProfiles()) ? environment.getDefaultProfiles() : environment.getActiveProfiles();
}

@dsyer
Copy link
Member

dsyer commented Nov 14, 2023

Uptime is already a metric as well - I guess it really belongs there because you don't expect info to change over time.

@jonatan-ivanov
Copy link
Member Author

I think using data that can change over time should be ok on the info endpoint, e.g.: current time (to detect clock skew issues), uptime (to see if the app was restarted or not), even the cpu count can change over time (because of cgroups).

I think the same about data that we have metrics for, e.g.: jvm version info. I think they can be used in different use-cases and the user should decide if they want one or the other or both.

This was referenced Nov 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
theme: observability Issues related to observability type: epic An issue tracking a large piece of work that will be split into smaller issues
Projects
None yet
Development

No branches or pull requests

5 participants