CrystalQore

Audit Logs

Track all administrative actions. User creation/modification, tenant changes, role updates, system setting changes, sync operations. Filter by date, user, action. Superadmin-only.

Audit Logs

Audit logs record all administrative actions performed in CrystalQore. They provide accountability, compliance support, and troubleshooting history. Access to audit logs is Superadmin-only.

Overview

Every significant administrative action is logged:

  • User operations — Create, edit, disable, delete
  • Tenant operations — Create, edit, disable
  • Role and permission changes — Role assignments, permission updates
  • System setting changes — Configuration updates
  • Sync operations — FusionPBX sync runs and results
  • PBX instance changes — Add, edit, remove instances
  • SMS and API client changes — Number assignments, campaign updates, API key creation

Accessing Audit Logs

  1. Log in as a user with the Superadmin role
  2. Navigate to Admin → Audit Logs
  3. View the log stream; use filters to narrow results

Only Superadmins can access audit logs. Standard Admins and Users cannot view this data.

Log Contents

Each audit log entry typically includes:

FieldDescription
TimestampWhen the action occurred
UserWho performed the action (user ID or email)
ActionWhat was done (e.g., "user.created", "tenant.updated")
ResourceAffected entity (e.g., user ID, tenant ID)
DetailsAdditional context (e.g., field changes, old/new values)
IP addressClient IP (if captured)

Filtering

Use filters to find specific events:

  • Date range — Start and end date/time
  • User — Filter by who performed the action
  • Action type — Filter by action category (user, tenant, role, settings, sync, etc.)
  • Resource — Filter by affected resource (e.g., specific user or tenant)

Logged Events

User Events

  • user.created — New user account created
  • user.updated — User details modified (email, tenant, role, password reset)
  • user.disabled — User account disabled
  • user.enabled — User account re-enabled
  • user.deleted — User account removed (if supported)

Tenant Events

  • tenant.created — New tenant created
  • tenant.updated — Tenant settings modified
  • tenant.disabled — Tenant disabled
  • tenant.enabled — Tenant re-enabled

Role and Permission Events

  • role.updated — Role or permission changed for a user
  • permission.updated — Module or widget permissions modified

System Events

  • settings.updated — System setting changed (e.g., application name, URL, API credentials, feature flags)
  • encryption.updated — Encryption configuration changed

Sync Events

  • sync.started — FusionPBX sync initiated
  • sync.completed — Sync finished (with summary: users created/updated, etc.)
  • sync.failed — Sync encountered errors

PBX and Integration Events

  • pbx.added — PBX instance added
  • pbx.updated — PBX instance modified
  • pbx.removed — PBX instance removed
  • sms.number.assigned — SMS number assigned
  • api_client.created — API client/key created

Retention

Audit log retention is configurable via Retention Policies. Retain logs long enough for compliance and forensics. Many organizations keep audit logs for 1–7 years depending on regulatory requirements.

Compliance

Audit logs support compliance with:

  • GDPR — Track access and changes to personal data
  • HIPAA — Maintain audit trails for healthcare communications
  • SOC 2 — Demonstrate access control and change management
  • Internal policies — Enforce accountability for admin actions

Best Practices

  • Review regularly — Spot unusual or unauthorized activity
  • Set retention appropriately — Balance storage cost with compliance needs
  • Export for archival — Consider exporting logs to long-term storage
  • Protect log access — Limit Superadmin role to trusted personnel
PageDescription
Retention PoliciesConfigure audit log retention
User ManagementUser operations that are logged
Roles and PermissionsRole changes that are logged

On this page