// Copyright (c) 2019 The Jaeger Authors. // Copyright (c) 2017 Uber Technologies, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package cmd import ( "net" "strconv" "github.com/spf13/cobra" "go.uber.org/zap" "github.com/jaegertracing/jaeger/examples/hotrod/pkg/log" "github.com/jaegertracing/jaeger/examples/hotrod/pkg/tracing" "github.com/jaegertracing/jaeger/examples/hotrod/services/route" ) // routeCmd represents the route command var routeCmd = &cobra.Command{ Use: "route", Short: "Starts Route service", Long: `Starts Route service.`, RunE: func(cmd *cobra.Command, args []string) error { zapLogger := logger.With(zap.String("service", "route")) logger := log.NewFactory(zapLogger) server := route.NewServer( net.JoinHostPort("0.0.0.0", strconv.Itoa(routePort)), tracing.InitOTEL("route", otelExporter, metricsFactory, logger), logger, ) return logError(zapLogger, server.Run()) }, } func init() { RootCmd.AddCommand(routeCmd) }