Why It is not a bad thing to build something small when you need it if nothing else fits.
In this talk I will share what went wrong, and what went well, and hopefully bring some inspiration for your team when they face a similar challenge.
process and store logs • Long processes to get through security and legalities • Not enough budget • Not enough capacity to host and manage an on premise solution
• Receive logs from multiple applications • Store pattern configuration per application and where to alert. • Process the incoming log of an application against the configuration • Send alert to configured channel when a match is found
for message logging. It allows separation of : • the software that generates messages • the system that stores them • and the software that reports and analyzes them
a bad idea ♀ Replacing `json.Marshal` with `json.Encoder` with buffer from `sync.pool` made significant improvement under load name old time/op new time/op delta Cache/test_put-8 34.2µs ± 1% 33.8µs ± 1% -1.09% (p=0.000 n=10+9) name old alloc/op new alloc/op delta Cache/test_put-8 1.47kB ± 0% 1.33kB ± 0% -9.71% (p=0.000 n=10+10) name old allocs/op new allocs/op delta Cache/test_put-8 42.0 ± 0% 40.0 ± 0% -4.76% (p=0.000 n=10+10) Some hiccups..