Naar hoofdinhoud gaan
Minutely probes zijn een mechanisme om periodiek custom metrics naar AppSignal te versturen. In minuutintervallen vanaf het moment dat de probe voor het eerst werd aangemaakt, kan een door de gebruiker gedefinieerde functie worden aangeroepen waarin u metrics kunt vastleggen en naar AppSignal kunt versturen. Functies van minutely probes worden asynchroon uitgevoerd. U kunt minutely probes volledig in- of uitschakelen met de configuratie-optie enable_minutely_probes.

Probes registreren

Om custom metrics vanuit uw applicatie te volgen, kunt u uw eigen probes toevoegen. Om een probe te registreren, moet u de probes.register()-methode aanroepen met twee argumenten: een probenaam en een functie die eenmaal per minuut wordt aangeroepen.
from appsignal import probes, set_gauge

def set_database_size_gauge():
    set_gauge("database_size", 10)

probes.register("database", set_database_size_gauge)
Om te garanderen dat alle minutely probes tijdig worden uitgevoerd, is het belangrijk om langdurig blokkeren binnen een functie van een minutely probe te vermijden.

Stateful probes

Een probe-functie kan tussen uitvoeringen door state behouden door deze als argument te accepteren en te retourneren. Dit is handig om bij te houden hoe waarden in de loop van de tijd veranderen:
from appsignal import probes, set_gauge

def set_user_signups_gauge(previous_user_count):
    current_user_count = User.objects.all().count()

    if previous_user_count is not None:
      set_gauge("user_signups", current_user_count - previous_user_count)

    return current_user_count

probes.register("user_signups", set_user_signups_gauge)
De eerste keer dat de minutely probe wordt aangeroepen, wordt None als argument doorgegeven. In opeenvolgende aanroepen wordt de waarde die door de vorige aanroep is geretourneerd als argument aan deze doorgegeven.