Skip to content

Latest commit

 

History

History
73 lines (52 loc) · 1.61 KB

README.md

File metadata and controls

73 lines (52 loc) · 1.61 KB

Build Status Go Report Card Coverage Status GoDoc

sesamy

keel

Opinionated way to run services on Kubernetes

Stack

  • Zap
  • Nats
  • Viper
  • GoTSRPC
  • Temporal
  • OpenTelemetry

Examples

See the examples folder for usages

package main

import (
  "net/http"

  "github.com/foomo/keel"
  "github.com/foomo/keel/service"
)

func main() {
  svr := keel.NewServer(
    keel.WithHTTPZapService(true),
    keel.WithHTTPViperService(true),
    keel.WithHTTPPrometheusService(true),
  )

  l := svr.Logger()

  svs := newService()

  svr.AddService(
    service.NewHTTP(l, "demo", "localhost:8080", svs),
  )

  svr.Run()
}

func newService() *http.ServeMux {
  s := http.NewServeMux()
  s.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
    w.WriteHeader(http.StatusOK)
    _, _ = w.Write([]byte("OK"))
  })
  return s
}

How to Contribute

Make a pull request...

License

Distributed under MIT License, please see license file within the code for more details.

Made with ♥ foomo by bestbytes