...

Source file src/edge-infra.dev/cmd/edge/monitoring/billman/main.go

Documentation: edge-infra.dev/cmd/edge/monitoring/billman

     1  package main
     2  
     3  import (
     4  	"context"
     5  	"fmt"
     6  	"os"
     7  
     8  	"github.com/peterbourgon/ff/v3/ffcli"
     9  
    10  	"edge-infra.dev/pkg/edge/monitoring/billman/cmd"
    11  	"edge-infra.dev/pkg/edge/monitoring/billman/cmd/all"
    12  	"edge-infra.dev/pkg/edge/monitoring/billman/cmd/logs"
    13  	"edge-infra.dev/pkg/edge/monitoring/billman/cmd/metrics"
    14  )
    15  
    16  func main() {
    17  	var (
    18  		rootCommand, rootConfig = cmd.New()
    19  		logsCommand             = logs.New(rootConfig)
    20  		metricsCommand          = metrics.New(rootConfig)
    21  		allCommand              = all.New(rootConfig)
    22  	)
    23  
    24  	rootCommand.Subcommands = []*ffcli.Command{
    25  		logsCommand,
    26  		metricsCommand,
    27  		allCommand,
    28  	}
    29  
    30  	if err := rootCommand.Parse(os.Args[1:]); err != nil {
    31  		fmt.Fprintf(os.Stderr, "error during Parse: %v\n", err)
    32  		os.Exit(1)
    33  	}
    34  
    35  	if err := rootConfig.AfterParse(); err != nil {
    36  		fmt.Fprintf(os.Stderr, "failed to setup connections after parsing flags: %v\n", err)
    37  	}
    38  
    39  	if err := rootCommand.Run(context.Background()); err != nil {
    40  		fmt.Fprintf(os.Stderr, "%v\n", err)
    41  		os.Exit(1)
    42  	}
    43  }
    44  

View as plain text