github.com/apcera/util@v0.0.0-20180322191801-7a50bc84ee48/events_main.go (about) 1 // Copyright 2016 Apcera Inc. All right reserved. 2 3 package main 4 5 import ( 6 "fmt" 7 "os" 8 "time" 9 10 "github.com/apcera/util/events" 11 ) 12 13 func main() { 14 bearerToken := os.Getenv("CNTM_TOKEN") 15 if bearerToken == "" { 16 fmt.Fprintln(os.Stderr, "No bearer token provided via $CNTM_TOKEN") 17 os.Exit(1) 18 } 19 20 if len(os.Args) < 2 { 21 fmt.Fprintln(os.Stderr, "Usage: `CNTM_TOKEN=\"Bearer ...\" events_main https://api.<cluster>/v1/wamp <job-fqn>") 22 os.Exit(1) 23 } 24 25 wampServerURL := os.Args[1] 26 streamFQN := os.Args[2] 27 28 fmt.Printf("Creating WAMP client against %q with token %q...\n", wampServerURL, bearerToken) 29 30 client, err := events.NewWAMPSessionClient(wampServerURL, bearerToken, "com.apcera.api.es") 31 if err != nil { 32 fmt.Fprintf(os.Stderr, "Failed to create WAMP client: %s\n", err) 33 os.Exit(1) 34 } 35 36 fmt.Printf("Done; streaming %q...\n\n", streamFQN) 37 if err := client.StreamEvents(os.Stdout, streamFQN, time.Minute); err != nil { 38 fmt.Fprintf(os.Stderr, "Failed to stream %q: %s\n", streamFQN, err) 39 os.Exit(1) 40 } 41 }