main.go
549 bytes
1package main
2
3import (
4 "errors"
5 "fmt"
6 "os"
7
8 "github.com/jessevdk/go-flags"
9
10 "github.com/TheEdgeOfRage/logfmt/config"
11 "github.com/TheEdgeOfRage/logfmt/parser"
12)
13
14func main() {
15 cfg, err := config.Parse()
16 if err != nil {
17 fmt.Fprintf(os.Stderr, "%s\n", err.Error())
18 var flagsErr *flags.Error
19 if errors.As(err, &flagsErr) && flagsErr.Type == flags.ErrHelp {
20 os.Exit(0)
21 }
22 os.Exit(1)
23 }
24
25 p := parser.NewParser(cfg, os.Stdin, os.Stdout)
26 err = p.Start()
27 if err != nil {
28 fmt.Fprintf(os.Stderr, "%s\n", err.Error())
29 os.Exit(1)
30 }
31}