Software Architecture in Golang: Observability



Software Architecture in Golang: Observability

Software Architecture in Golang: Observability

Observability is key when working on Distributed Systems, it allows us to understand the behavior of an application and troubleshoot problems.

Observability consists, among other things, in instrumenting services, collecting their metrics and saving their logs with the whole point of making sure all those 3 streams of data are connected in a sane way so we can use that information to learn about their behavior and understand what exactly is happening.

OpenTelemetry is the de-facto Open Source solution for Observability, together with well-known projects like Jaeger, Zap and Promethus it allows us to collect metrics and details regarding the flow of our services, how they communicate with each other, however keep in mind that at the time the Go support for OpenTelemetry is still in progress so may want to consider a few commercial options instead, like:

■ NewRelic https://newrelic.com/,
■ DataDog https://www.datadoghq.com/, and
■ LightStep https://lightstep.com/

== Relevant links

■ Example code: https://github.com/MarioCarrion/todo-api-microservice-example/tree/156195b3dc00228d6ecce1fcb0ef467553bde093
■ Golang Microservices: Observability using OpenTelemetry: https://youtu.be/bytCFQJ43DE
■ Software Architecture in Golang: Testability: https://youtu.be/tPpJkNrLcnk
■ Software Architecture in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_GCd12Lrv_evJ3Zhv1dl8B-
■ Distributed Systems Observability: https://learning.oreilly.com/library/view/distributed-systems-observability/9781492033431/
■ Microservices Patterns: https://amzn.to/3GCB5ey
■ OpenTelemetry Go Documentation: https://opentelemetry.io/docs/instrumentation/go/

== All Go/Golang Playlists

■ Building Microservices in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_Fn8sAXIk0WyBfK_sT1pohu
■ Go/Golang Tools and Packages: https://www.youtube.com/playlist?list=PL7yAAGMOat_HEEOvH99agDs_5g51A0Ls3
■ Learning Concurrency Patterns in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_Fhj_px_DzNzTsXs-mRwv1t
■ Learning Go/Golang : https://www.youtube.com/playlist?list=PL7yAAGMOat_F7bOImcjx4ZnCtfyNEqzCy
■ Learning Relational Databases in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_EgwoQTvNUflrYL_4qzdB7f
■ Testing in Go/Golang: https://www.youtube.com/playlist?list=PL7yAAGMOat_HSeW4zF0uRL9EaHadE4ZZq

== Socials

■ https://twitter.com/MarioCarrion
■ https://www.instagram.com/mario.carrion
■ https://linkedin.com/in/MarioCarrion

00:00 – Start
00:11 – What is Observability?
01:11 – How does Observability work?
03:33 – Example of Observability using Go/Golang
08:07 – Conclusions about Observability

=== Who am I?

Hello👋🏼! I’m Mario, a Hands-on Software Architect and Lead Backend Engineer with more than 16 years of professional experience building all kinds of software including on-premise Industrial Automation Systems, Linux Accessibility Desktop and Browser Components as well as Distributed Advertising Microservices.

Every week I will share with you different topics I’ve learned while working for small startups and large companies including the processes I’ve followed over the years for successfully delivering complex enterprise systems from start to end.

Subscribe if you like Software Development, Software Architecture and Systems Design!

Keep it up. Don’t give up!

#golang #tutorial #databases

=== Our Vlog Channel

https://www.youtube.com/c/RubyCarrion/videos

=== Our affiliate links below

■ My Amazon Storefront: https://www.amazon.com/shop/rubycarrion
■ Shop my IG posts on my shopLTK page: https://www.shopltk.com/explore/RubyCarrion
■ Vlog camera: Sony RX100 VII https://amzn.to/3qQfvMc
■ Other vlog cameras and gear: https://rubycarrion.com/vlogcamerasandgear/
■ Shop through my links to support the channel: https://rubycarrion.com/shop-my-links/
■ Get a 30 day FREE Trial of Epidemic Sound: https://www.epidemicsound.com/referral/szx441/
■ Join Rakuten for FREE and get $30 when you spend $30: https://www.rakuten.com/r/RUBYRA132?eeid=28187

DISCLAIMER: Some of the links shared in the description are affiliate links. As a member of these affiliate programs, I earn a small commission from your purchases at no additional cost to you. I appreciate your support! 💖

Comments are closed.