---
title: "Sanja Malovic (@unjica) | Hashnode"
description: "Sanja Malovic (@unjica) writes on Hashnode. Read their latest articles and follow their work."
url: "https://hashnode.com/@unjica"
---

@unjica

# Sanja Malovic

@unjica · Joined June 2022

### [GA4 page views in a Next.js app: why client navigations go missing (and how to send exactly one per route)](https://telemetry-tracker.hashnode.dev/ga4-page-views-in-a-next-js-app-why-client-navigations-go-missing-and-how-to-send-exactly-one-per-route?utm_source=hashnode&utm_medium=feed)

You open GA4 and the story looks odd: plenty of people land on the homepage, almost nobody reaches a second page, and the few second pages you do see carry the previous page's title. Before you redesi

5 min read · [telemetry-tracker.hashnode.dev](https://telemetry-tracker.hashnode.dev/ga4-page-views-in-a-next-js-app-why-client-navigations-go-missing-and-how-to-send-exactly-one-per-route?utm_source=hashnode&utm_medium=feed)

[Nov 3](https://hashnode.com/posts/ga4-page-views-in-a-next-js-app-why-client-navigations-go-missing-and-how-to-send-exactly-one-per-route/6ae9d6ec9951f3fb92b04d0f)

### [Alert on what should have happened: catching signups, payment webhooks and nightly jobs that silently stop](https://telemetry-tracker.hashnode.dev/alert-on-what-should-have-happened-catching-signups-payment-webhooks-and-nightly-jobs-that-silently-stop?utm_source=hashnode&utm_medium=feed)

Error trackers stay green when nothing runs. Pick the events that matter, record them only after the work succeeds, size the window from real gaps, and test it once.

8 min read · [telemetry-tracker.hashnode.dev](https://telemetry-tracker.hashnode.dev/alert-on-what-should-have-happened-catching-signups-payment-webhooks-and-nightly-jobs-that-silently-stop?utm_source=hashnode&utm_medium=feed)

[1](https://hashnode.com/posts/alert-on-what-should-have-happened-catching-signups-payment-webhooks-and-nightly-jobs-that-silently-stop/6ae342cb299447e1c2bf60f3) [Oct 29](https://hashnode.com/posts/alert-on-what-should-have-happened-catching-signups-payment-webhooks-and-nightly-jobs-that-silently-stop/6ae342cb299447e1c2bf60f3)

### [Monitoring Vercel cron jobs in Next.js: get alerted when a run is missed, fails or hangs](https://telemetry-tracker.hashnode.dev/monitoring-vercel-cron-jobs-in-next-js-get-alerted-when-a-run-is-missed-fails-or-hangs?utm_source=hashnode&utm_medium=feed)

Vercel doesn't retry or alert. Two signals per cron (a check-in with a deadline and the error that explains it), with App Router code.

9 min read · [telemetry-tracker.hashnode.dev](https://telemetry-tracker.hashnode.dev/monitoring-vercel-cron-jobs-in-next-js-get-alerted-when-a-run-is-missed-fails-or-hangs?utm_source=hashnode&utm_medium=feed)

[Oct 27](https://hashnode.com/posts/monitoring-vercel-cron-jobs-in-next-js-get-alerted-when-a-run-is-missed-fails-or-hangs/6ae09c4c39d277ea23e14acc)

### [Self-host our MIT error tracker with one Docker Compose file](https://telemetry-tracker.hashnode.dev/self-host-our-mit-error-tracker-with-one-docker-compose-file?utm_source=hashnode&utm_medium=feed)

Postgres, API and dashboard from selfhost/ in v1.22.8: three secrets, docker compose up -d, a TLS proxy, and the numbers we measured on one test box

7 min read · [telemetry-tracker.hashnode.dev](https://telemetry-tracker.hashnode.dev/self-host-our-mit-error-tracker-with-one-docker-compose-file?utm_source=hashnode&utm_medium=feed)

[Oct 22](https://hashnode.com/posts/self-host-our-mit-error-tracker-with-one-docker-compose-file/6ad9f7a533fb0a7d0ff0e0b4)

### [Are ad-blockers eating your error reports? How to check, and how a same-origin proxy works](https://telemetry-tracker.hashnode.dev/are-ad-blockers-eating-your-error-reports-how-to-check-and-how-a-same-origin-proxy-works?utm_source=hashnode&utm_medium=feed)

A 10-minute check for missing browser errors, plus Next.js, nginx and Cloudflare Worker relay setups that don't open a spoofing hole

6 min read · [telemetry-tracker.hashnode.dev](https://telemetry-tracker.hashnode.dev/are-ad-blockers-eating-your-error-reports-how-to-check-and-how-a-same-origin-proxy-works?utm_source=hashnode&utm_medium=feed)

[Oct 20](https://hashnode.com/posts/are-ad-blockers-eating-your-error-reports-how-to-check-and-how-a-same-origin-proxy-works/6ad75c3195fcd4f8de80cdd8)
