ADORSYS-GIS / ADORSYS-GIS/e2e-banking-app

Implement `/health` Endpoint for Health Check in Rust Server

Offen
#56 1 Kommentar 0 Reaktionen 1 zugewiesene Person Beansprucht von @Tekum-Emmanuella Auf GitHub ansehen
backend ticket
Vorherrschende Sprache
JavaScript
Sterne
9
Forks
23
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

### Description:
This task involves adding a `/health` endpoint to our Rust-based server, which is crucial for monitoring the application's health and availability. The endpoint will respond with a simple JSON object that indicates the server's current status. This is a fundamental feature for deployment environments and ensures that our application can be easily monitored by external systems or services.

### Objectives:
- **`/health` Endpoint Creation**: Develop an endpoint that returns a standard response indicating the server is operational.
- **Response Format**: The endpoint should return a JSON response with a status field indicating success.

### Acceptance Criteria:
1. The Rust server has a `/health` endpoint accessible via HTTP GET request.
2. Accessing the `/health` endpoint returns a JSON response with a structure like: `{"status": "ok"}`.
3. The endpoint responds with an appropriate HTTP status code 200 (OK) when the server is running normally.
4. The implementation follows Rust and Rocket coding standards and best practices for API development.
5. Documentation is updated to include information about the new endpoint, including its purpose and response format.

### Resources:
- [Rocket Documentation](https://rocket.rs/)
- [Best Practices for Health Checks](https://www.oreilly.com/library/view/distributed-systems-observability/9781492033431/ch04.html)

### Implementation Steps:
1. **Endpoint Definition**: Define a new route in the Rocket application for the `/health` endpoint. This should be a GET request that requires no parameters.
2. **Handler Function**: Implement a handler function for the `/health` endpoint. This function should construct and return a JSON response indicating that the server's status is "ok".
3. **Testing**: Write unit and integration tests to verify that the `/health` endpoint behaves as expected under various conditions, including server start-up and running states.
4. **Documentation**: Update the project documentation to include details about the `/health` endpoint, explaining its purpose, the expected response format, and any relevant information for developers or system administrators.

### Milestones:
1. Endpoint Development
2. Testing and Verification
3. Documentation Update

### Blocker:
- #55

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.