cognitect-labs / vase

Data driven microservices
Eclipse Public License 1.0
373 stars 42 forks source link

Vase to provide standard microservice APIs #83

Open mik373 opened 6 years ago

mik373 commented 6 years ago

Description

It's typical for a mature microservice framework to provide a number of endpoints out-of-the box. For instance, Dropwizard and SpringBoot provide /health, /metrics, etc. They both it easy to add custom healthchecks that are displayed in /health and /metrics displays all the metrics that can be generated from the endpoint declaration such as counts per HTTP codes for calls made per endpoint, timing statistics for the times taken by calling each endpoint. For health, for vase a default health endpoint can check connectivity to Datomic. For metrics, all the default Datomics metrics can be displayed. Dropwizard also makes it very easy to add any custom metrics explicitly in code. Our in-house web services also return their swagger-formatted documentation from /docs which can be either static and provided in a file or generated at runtime by looking at the service routes and documentations. In Java it's done by looking at the custom custom annotations.

Expected Behavior

Vase services provided health, metrics, other common endpoints out of box and makes it easy to add content to those endpoints in a standard way.

Actual Behavior

The standards endpoints are not provided.