Second update

This commit is contained in:
Ben Wilson 2020-03-24 09:12:37 -04:00
parent ac4def41a5
commit b3590ae427
6 changed files with 30 additions and 4 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
cloudlog

1
go.mod
View File

@ -4,6 +4,7 @@ go 1.13
require (
github.com/gofiber/fiber v1.8.32
github.com/gofiber/logger v0.0.1
github.com/gorilla/websocket v1.4.1 // indirect
github.com/pkg/errors v0.9.1 // indirect
github.com/slack-go/slack v0.6.3

11
go.sum
View File

@ -17,8 +17,11 @@ github.com/fasthttp/websocket v1.4.2 h1:AU/zSiIIAuJjBMf5o+vO0syGOnEfvZRu40xIhW/3
github.com/fasthttp/websocket v1.4.2/go.mod h1:smsv/h4PBEBaU0XDTY5UwJTpZv69fQ0FfcLJr21mA6Y=
github.com/go-test/deep v1.0.4 h1:u2CU3YKy9I2pmu9pX0eq50wCgjfGIt539SqR7FbHiho=
github.com/go-test/deep v1.0.4/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
github.com/gofiber/fiber v1.8.3/go.mod h1:5NagvZ+MZRT7nGdQTLPEJQWyaPfctF6S/eBapXM2EpM=
github.com/gofiber/fiber v1.8.32 h1:7ii5G6TlFdHwKx5vVts6YCLjdAk+kckGP4Yk7bqZDDs=
github.com/gofiber/fiber v1.8.32/go.mod h1:JD9ZZgxqitISS6yDcKP26BKR6Ul+z6UrZX7WlalC1sE=
github.com/gofiber/logger v0.0.1 h1:2dsELppmNbQP0nnKCUqgRh0T6R2BVPIyvzrXbcrtXQU=
github.com/gofiber/logger v0.0.1/go.mod h1:w6dq+livPsXiPlNyBKl5fMPvSmxIXQX3JqPv3obo4so=
github.com/gofiber/template v1.0.0 h1:Vf4Fby9zUWVQyY2y69KKyRHsEYlIE+Pxb25M+jiaEL0=
github.com/gofiber/template v1.0.0/go.mod h1:+bij+R0NI6urTg2jtQvPj5wb2uWMxW9eYGsAN3QhnP0=
github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
@ -35,8 +38,11 @@ github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/u
github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck=
github.com/klauspost/compress v1.8.2 h1:Bx0qjetmNjdFXASH02NSAREKpiaDwkO1DRZ3dV2KCcs=
github.com/klauspost/compress v1.8.2/go.mod h1:RyIbtBH6LamlWaDj8nUwkbUhJ87Yi3uG0guNDohfE1A=
github.com/klauspost/compress v1.10.2 h1:Znfn6hXZAHaLPNnlqUYRrBSReFHYybslgv4PTiyz6P0=
github.com/klauspost/compress v1.10.2/go.mod h1:aoV0uJVorq1K+umq18yTdKaF57EivdYsUV+/s2qKfXs=
github.com/klauspost/cpuid v1.2.1 h1:vJi+O/nMdFt0vqm8NZBI6wzALWdA2X+egi0ogNyrC/w=
github.com/klauspost/cpuid v1.2.1/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek=
github.com/klauspost/cpuid v1.2.3/go.mod h1:Pj4uuM528wm8OyEC2QMXAi2YiTZ96dNQPGgoMS4s3ek=
github.com/kr/pretty v0.1.0 h1:L/CwN0zerZDmRFUapSPitk6f+Q3+0za1rQkzVuMiMFI=
github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
@ -44,8 +50,12 @@ github.com/kr/text v0.1.0 h1:45sCR5RtlFHMR4UwH9sdQ5TC8v0qDQCHnXt+kaKSTVE=
github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421 h1:ZqeYNhU3OHLH3mGKHDcjJRFFRrJa6eAM5H+CtDdOsPc=
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742 h1:Esafd1046DLDQ0W1YjYsBW+p8U2u7vzgW2SQVmlNazg=
github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
github.com/modern-go/reflect2 v1.0.1 h1:9f412s+6RmYXLWZSEzVVgPGK7C2PphHj5RJrvfx9AWI=
github.com/modern-go/reflect2 v1.0.1/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
github.com/nlopes/slack v0.6.0/go.mod h1:JzQ9m3PMAqcpeCam7UaHSuBuupz7CmpjehYMayT6YOk=
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
github.com/pkg/errors v0.8.1 h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I=
@ -68,6 +78,7 @@ github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6Kllzaw
github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc=
github.com/valyala/fasthttp v1.9.0 h1:hNpmUdy/+ZXYpGy0OBfm7K0UQTzb73W0T0U4iJIVrMw=
github.com/valyala/fasthttp v1.9.0/go.mod h1:FstJa9V+Pj9vQ7OJie2qMHdwemEDaDiSdBnvPM1Su9w=
github.com/valyala/fasttemplate v1.1.0 h1:RZqt0yGBsps8NGvLSGW804QQqCUYYLsaOjTVHy1Ocw4=
github.com/valyala/fasttemplate v1.1.0/go.mod h1:UQGH1tvbgY+Nz5t2n7tXsz52dQxojPUpymEIMZ47gx8=
github.com/valyala/tcplisten v0.0.0-20161114210144-ceec8f93295a/go.mod h1:v3UYOV9WzVtRmSR+PDvWpU/qWl4Wa5LApYYX4ZtKbio=
go.uber.org/atomic v1.6.0 h1:Ezj3JGmsOnG1MoRWQkPBsKLe9DwWD9QeXzTRzzldNVk=

View File

@ -23,3 +23,8 @@ spec:
secretKeyRef:
name: cloudlog-secret
key: slackURL
- name: tektonDashboadUrl
valueFrom:
secretKeyRef:
name: cloudlog-secret
key: tektonDashboadUrl

View File

@ -6,7 +6,7 @@ metadata:
labels:
app: cloudlog
spec:
type: ClusterIP
type: NodePort
selector:
app: cloudlog
ports:

14
main.go
View File

@ -13,6 +13,7 @@ import (
)
var slackURL string
var tektonDashboadUrl string
type slackMessage struct {
Blocks []slack.MessageBlockType
@ -29,6 +30,7 @@ func main() {
logger, _ := zap.NewProduction()
defer logger.Sync()
log := logger.Sugar()
log.Infow("Startup", "version", Version)
app := fiber.New()
app.Use(flog.New())
@ -37,6 +39,11 @@ func main() {
log.Fatalw("slackURL ENV value missing")
}
tektonDashboadUrl = os.Getenv("tektonDashboadUrl")
if tektonDashboadUrl == "" {
log.Fatalw("tektonDashboadUrl ENV value missing")
}
app.Get("/", func(c *fiber.Ctx) {
c.Send("cloudlog!")
})
@ -57,7 +64,7 @@ func main() {
return
}
if err := sendSlackMessage(cloudEvent); err != nil {
if err := sendSlackMessage(cloudEvent, log); err != nil {
log.Error(err)
c.Status(500).Send(err)
return
@ -115,8 +122,9 @@ type TektonCloudEvent struct {
PodName string `json:"pod_name"`
}
func sendSlackMessage(cloudEvent *TektonCloudEvent) error {
text := fmt.Sprintf("*%s*\n\n```%s```\nPodName: %s", cloudEvent.Title, cloudEvent.Message, cloudEvent.PodName)
func sendSlackMessage(cloudEvent *TektonCloudEvent, log *zap.SugaredLogger) error {
text := fmt.Sprintf("*%s*\n\n```%s```\nPodName: %s/%s", cloudEvent.Title, cloudEvent.Message, tektonDashboadUrl, cloudEvent.PodName)
log.Infow("Sending slack message!", "text", text)
msg := slack.WebhookMessage{
Text: text,
}