Skip to content

A proof of concept for a central logging, information system application

Notifications You must be signed in to change notification settings

angus-apis/lisa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LISA

Logging, information & system analysis

App structure

/LISA
|-- app/                   # Core application code
|-- config/                # Application config
    |-- services.yaml      # A list of services to monitor
|-- images/                # Directory of images
|-- spec/                  # Directory of specification files, including OpenAPI documents etc
|-- tests/                 # Application tests and dummy servers

Services.yaml

The config/services.yaml file is used to define services that LISA should monitor. The structure of the file is explained below...

microservices:
  - name: User Service  # The display name of the microservice
    id: user_service # Unique slug for the service
    description: Handles user data and authentication  # Brief description of the service
    health_check_url: http://user-service/health  # URL to check the health of the service
    version_url: http://user-service/version  # URL to check the version of the service

Badges

The status of services can be returned as SVG badges, using the endpoint "/badge/{service_id}"

Status Description Badge Image
UP The service is operating normally. UP Badge
DOWN The service is not reachable. DOWN Badge
DODGY The service is taking longer than usual to respond DODGY Badge
MAINTENANCE The service is under maintenance. Maintenance Badge
FAILED The service check failed. Failed Badge
UNKNOWN Status is not determined. Unknown Badge

OpenAPI spec

In spec/openapi.yaml is a file which defines how the microservice endpoints should work. This is currently a work in progress and is not yet complete.

Dummy Servers

The tests/dummies package contains two dummy servers that can be used to test the application. They are both configured with a version and health endpoint to run on ports 5001 and 5002

Run the dummy servers

Service A

.venv/bin/python tests/dummies/service_a.py

Service B

.venv/bin/python tests/dummies/service_b.py

About

A proof of concept for a central logging, information system application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published