Grip houden zonder Datadog: observability voor kleine teams

Hoe we als klein team grip houden op drie samenwerkende systemen zonder meteen dure observability-tools binnen te halen. Een pleidooi voor bewust niet overengineeren.

W
WUB

De verleiding om als startup meteen "enterprise tooling" te adopteren is groot. Datadog, Sentry, New Relic — allemaal prima producten, maar ook allemaal met een prijskaartje dat voor een klein team fors aantikt.

Wij hebben ervoor gekozen om het voorlopig zelf te doen. Niet uit koppigheid, maar omdat we denken dat 80% van de waarde te halen is met 20% van de complexiteit.

Wat we hadden op te lossen

WeUniteBrands draait op drie systemen die samen moeten werken: het hoofdplatform (waar merken hun webshop in beheren), de admin-omgeving (waar wij intern werken), en de fulfillment-koppeling (die de orders doorzet naar onze 3PL). Als er iets misgaat in een bestelling, kan het probleem in elk van de drie zitten — of in de interactie tussen twee ervan.

Als klein team is debuggen dan lastig. Je wilt niet op elke grep door logs een halve dag kwijt zijn. Maar je wilt ook geen vijfhonderd euro per maand uitgeven aan een tool waarvan je 90% van de features niet gebruikt.

Wat we hebben gebouwd

We hebben een eigen, lichte logging-laag gemaakt. Niks spectaculairs: gestructureerde logs met een paar conventies waar we ons aan houden — elk onderdeel heeft zijn eigen namespace, elke request heeft een correlation-ID die door alle drie de systemen mee reist, en we kunnen per onderdeel in- en uitzetten wat er wordt vastgelegd.

Dat laatste is het belangrijkste stukje. Als we aan het debuggen zijn, zetten we verbose logging aan voor één onderdeel. Als alles stabiel draait, loggen we alleen de essentie. Zo blijven de logs leesbaar, zo blijven de opslagkosten laag.

Het totale bouwproject was nog geen week werk.

Wat het ons oplevert

Als een merk nu meldt dat een order vreemd verwerkt is, pakken we het correlation-ID en volgen we de hele flow. Zien we waar het afloopt. Negen van de tien keer vinden we het probleem binnen twintig minuten.

Als er écht iets stuk gaat, hebben we direct de context om te handelen.

Wanneer wél upgraden

We zijn niet ideologisch over dit. Als ons team groeit, als ons volume groeit, als de complexiteit toeneemt — dan komt er een moment dat een tool als Sentry of Datadog meer oplevert dan het kost. Dat moment is voor ons nu niet.

De regel die we onszelf stellen: we upgraden pas als de pijn groter is dan de oplossing.

Tot die tijd: een paar honderd regels zelfgeschreven code, en een hele hoop rust.

Deel dit artikel:

Klaar om te starten?

Ontdek hoe WeUniteBrands jouw merk kan helpen groeien met professionele fulfillment.