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

Microservice pattern: Log deployments and changes #2696

Open
iluwatar opened this issue Oct 15, 2023 · 3 comments
Open

Microservice pattern: Log deployments and changes #2696

iluwatar opened this issue Oct 15, 2023 · 3 comments

Comments

@iluwatar
Copy link
Owner

iluwatar commented Oct 15, 2023

Description:
The objective is to implement the Microservices - Log Deployments and Changes design pattern in our project. This pattern ensures that all deployments and changes to the microservices architecture are logged effectively. This enhances traceability, debugging, and auditing processes, making it easier to maintain the health and stability of the system.

Main elements of the pattern:

  1. Centralized Logging System: Implement a centralized logging system to capture logs from all microservices. This helps in aggregating and analyzing logs from different sources in a unified manner.

  2. Deployment Logging: Ensure that every deployment action is logged. This includes the timestamp, the service being deployed, version number, deployment environment, and the individual initiating the deployment.

  3. Change Tracking: Log all changes made to the microservices, such as configuration changes, updates to service endpoints, and changes in inter-service communication protocols.

  4. Automated Logging: Integrate logging into the CI/CD pipeline to automate the logging of deployment and change events, ensuring consistency and reducing manual intervention.

  5. Visualization and Alerts: Provide tools to visualize logs and set up alerts for specific events or patterns, aiding in proactive monitoring and issue resolution.

References:

Acceptance Criteria:

  1. A centralized logging system is implemented and integrated with all microservices.
  2. Deployment actions are automatically logged with all necessary details.
  3. All changes to microservices are logged, including configuration changes and updates.
  4. The CI/CD pipeline is updated to include automated logging for deployments and changes.
  5. Tools for log visualization and alerting are implemented and operational.
  6. Documentation is updated to reflect the new logging mechanisms and usage instructions.
  7. Unit and integration tests are written to ensure logging functionality works as expected.
@ankurnotwarikoo
Copy link

Can this done by using slf4j logs ?
Will that suffice ?

@iluwatar
Copy link
Owner Author

iluwatar commented Jun 4, 2024

I'm afraid this requires quite complicated setup. Many alternative ways to do it, but we need some microservices, centralized logging, and CI/CD.

@Mamidisetty
Copy link

can i use SLF4J for logging and logback as the implementation?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

3 participants