add metrics endpoint

Signed-off-by: David Christofas <dchristofas@owncloud.com>
This commit is contained in:
David Christofas
2020-07-29 11:02:03 +02:00
parent 02610f3b87
commit 71f31b4354
4 changed files with 125 additions and 0 deletions

View File

@@ -17,6 +17,7 @@ import (
"github.com/owncloud/ocis-thumbnails/pkg/config"
"github.com/owncloud/ocis-thumbnails/pkg/flagset"
"github.com/owncloud/ocis-thumbnails/pkg/metrics"
"github.com/owncloud/ocis-thumbnails/pkg/server/debug"
"github.com/owncloud/ocis-thumbnails/pkg/server/grpc"
"go.opencensus.io/stats/view"
"go.opencensus.io/trace"
@@ -145,6 +146,40 @@ func Server(cfg *config.Config) *cli.Command {
cancel()
})
server, err := debug.Server(
debug.Logger(logger),
debug.Config(cfg),
)
if err != nil {
logger.Info().
Err(err).
Str("transport", "debug").
Msg("Failed to initialize server")
return err
}
gr.Add(func() error {
return server.ListenAndServe()
}, func(_ error) {
ctx, timeout := context.WithTimeout(ctx, 5*time.Second)
defer timeout()
defer cancel()
if err := server.Shutdown(ctx); err != nil {
logger.Info().
Err(err).
Str("transport", "debug").
Msg("Failed to shutdown server")
} else {
logger.Info().
Str("transport", "debug").
Msg("Shutting down server")
}
})
{
stop := make(chan os.Signal, 1)