apollo-java icon indicating copy to clipboard operation
apollo-java copied to clipboard

[OSPP]Add more observability in apollo config client

Open Rawven opened this issue 6 months ago • 9 comments

What's the purpose of this PR

discussions OSPP2024 test cases Test

Which issue(s) this PR fixes:

Issue

Brief changelog

XXXXX

Follow this checklist to help us incorporate your contribution quickly and easily:

  • [✔ ] Read the Contributing Guide before making this pull request.
  • [ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
  • [ ] Write necessary unit tests to verify the code.
  • [❌] Run mvn clean test to make sure this pull request doesn't break anything.
  • [ ] Update the CHANGES log.

Summary by CodeRabbit

Summary by CodeRabbit

  • New Features

    • Introduced several monitoring APIs for exceptions, namespaces, running parameters, and thread pools, enhancing visibility into system performance.
    • Launched the ApolloClientBootstrapArgsMonitorApi, ApolloClientNamespaceMonitorApi, and ApolloClientThreadPoolMonitorApi to manage configuration parameters and resource metrics.
    • Enhanced monitoring capabilities with structured logging for metrics and events.
    • Added a ConfigMonitorInitializer class to facilitate the setup of monitoring components.
  • Improvements

    • Enhanced error handling in various services by using defined constants for logging.
    • Updated metrics collection mechanisms to track configuration loading durations and exception occurrences efficiently.
    • Added new configuration properties for improved control over monitoring settings.
  • Bug Fixes

    • Refined logging and error tracking to ensure consistency and accuracy in reporting metrics.
  • Tests

    • Introduced comprehensive unit tests for newly added monitoring features and functionality.
    • Added performance tests to validate the robustness of monitoring under stress conditions.
    • Implemented tests for the ApolloClientMonitorContext and ApolloClientMetricsExporter to ensure correct functionality.

Rawven avatar Aug 01 '24 09:08 Rawven