Skip to main content

Activity Log

Review what happened in pfSense Actions, from API requests to sign-ins and settings changes, with sensitive details left out.

Why Use the Activity Log?

  1. Shows which token ran which action, and whether it worked.
  2. Records failed sign-ins along with successful ones.
  3. Leaves out IP addresses, MAC addresses, request bodies, and credentials, so reviewing it doesn't expose them.

Read an Event

The Activity page lists events with the newest first, and Overview shows the newest 8 under Recent activity. Each event shows:

  • Status — A green dot for succeeded or a red dot for failed.
  • Summary — What happened, such as Completed Wake-on-LAN request.
  • Details — The event name, the actor, and the category.
  • Time — How long ago it happened, with the full date for older events.
Activity page with the All, Access, Tokens, Configuration, Service, and Failed chips above the newest events, from notification-created, token-created, connection-tested, and installation-claimed by admin to API requests by Uptime Kuma and Home Assistant, where the reachability check failed
The Activity page

Filter Events

The chips above the list narrow it down.

ChipShows
AllEvery event.
AccessAPI requests, sign-ins, and sign-in security changes.
TokensTokens being created, edited, and revoked.
ConfigurationConnection tests and changes, and changes to notification destinations.
ServiceEvents from pfSense Actions itself, such as creating the database.
FailedEvery event that failed, from any category.

Actors

  • Token name — For API requests, the name the token had when it made the request.
  • Administrator username — For sign-ins and changes made in the console.
  • anonymous — For failed sign-in and setup attempts.
  • system — For events from pfSense Actions itself.

What Gets Recorded

EventCategoryWhen it's recorded
connectivity-checkAccessA connectivity request ran.
system-informationAccessA system information request ran.
reachability-checkAccessA ping request ran, including one rejected for an invalid body.
wake-on-lanAccessA Wake-on-LAN request ran, including one rejected for an invalid body.
installation-claimedAccessSomeone created the administrator account with the setup code.
installation-claimAccessSomeone entered a wrong or expired setup code.
sign-inAccessSomeone signed in, or a sign-in attempt failed.
sign-outAccessThe administrator signed out.
password-changedAccessThe administrator's password changed.
username-changedAccessThe administrator's username changed.
totp-enabledAccessAn authenticator app was turned on.
totp-disabledAccessThe authenticator app was turned off.
recovery-codes-replacedAccessNew recovery codes replaced the old ones.
passkey-createdAccessA passkey was added.
passkey-removedAccessA passkey was removed.
token-createdTokensA token was created.
token-updatedTokensA token's name, scopes, or expiration changed.
token-revokedTokensA token was revoked.
connection-testedConfigurationSomeone tested the saved connection.
connection-updateConfigurationProposed connection settings failed their test and weren't saved.
connection-updatedConfigurationNew connection settings passed their test and were saved, or the deprecated PFSENSE_* variables filled them in at startup.
notification-createdConfigurationA notification destination was added.
notification-updatedConfigurationA notification destination's name, events, or settings changed.
notification-removedConfigurationA notification destination was removed.
state-initializedServicepfSense Actions created a new controller database.
encryption-key-replacedServiceA missing encryption key was replaced, and its secrets were removed.

API requests rejected for a missing, malformed, unknown, or expired token, a missing scope, or a rate limit aren't recorded, and neither are requests answered 503 because no connection is saved.

Alerts, Send test, and the scheduled check aren't recorded either. Each destination's row on Notifications shows its last send instead.

What's Never Recorded

  • Tokens, passwords, private keys, setup and recovery codes, and authenticator secrets.
  • Notification settings and secret fields, since the events name only the destination.
  • Request bodies, including any IP or MAC addresses in them.
  • SSH output and error details.

Retention

  • pfSense Actions keeps the newest 250 events and deletes older ones as new events arrive, and the Activity page shows all of them.
  • The log lives in the controller database, so it survives restarts but not the removal of the data volume.

info

The activity log is a local, bounded history, not a tamper-resistant audit trail or a replacement for central logging.