Skip to main content

Audit Logging and System Monitoring

Conducky maintains comprehensive audit logs to track all significant actions within the system. This provides accountability, security monitoring, and compliance support for incident management operations.

Audit System Overview

Purpose and Benefits

  • Accountability: Track who performed what actions and when
  • Security Monitoring: Detect unauthorized access or suspicious activity
  • Compliance: Support regulatory requirements and internal policies
  • Incident Investigation: Provide detailed history for incident resolution
  • System Debugging: Help troubleshoot issues with detailed action history

Audit Log Structure

Each audit log entry contains:

  • Action: What was performed (e.g., "create_incident", "assign_user")
  • Target Type: Type of entity affected (e.g., "incident", "user", "event")
  • Target ID: Unique identifier of the affected entity
  • User ID: Who performed the action (null for system actions)
  • Timestamp: When the action occurred
  • Event/Organization Context: Scope of the action for multi-tenancy
  • IP Address: Source IP of the request (when available)
  • User Agent: Browser/client information (when available)

Tracked Events

Incident Management Events

Incident Lifecycle

ActionDescriptionTarget TypeLogged Information
create_incidentNew incident reportedincidentReporter ID, event context
update_incident_titleIncident title changedincidentUser ID, old/new values
update_incident_descriptionDescription modifiedincidentUser ID, modification timestamp
update_incident_severitySeverity level changedincidentUser ID, old/new severity
update_incident_stateReport state changedincidentNew state, notes
assign_incidentReport assigned to responderincidentResponder ID
resolve_incidentIncident marked as resolvedincidentResolver ID, resolution details
close_incidentIncident closedincidentUser ID, closure reason

Incident Comments

ActionDescriptionTarget TypeLogged Information
create_commentComment added to incidentcommentAuthor ID, visibility (internal/external)
update_commentComment content modifiedcommentEditor ID, modification timestamp
delete_commentComment removedcommentDeleter ID, deletion reason
ActionDescriptionTargetDetails
upload_related_fileFile uploaded to incidentRelatedFileUploader ID, file metadata
download_related_fileRelated file accessedRelatedFileAccessor ID, access timestamp
delete_related_fileRelated file removedRelatedFileDeleter ID, deletion reason

User and Access Management

Authentication Events

ActionDescriptionTarget TypeLogged Information
user_login_successSuccessful loginuserLogin method, IP address
user_login_failedFailed login attemptuserAttempted email, IP address, failure reason
user_logoutUser logged outuserSession duration
password_reset_requestedPassword reset initiateduserRequest timestamp, IP address
password_reset_completedPassword successfully resetuserReset timestamp

Role Management

ActionDescriptionTarget TypeLogged Information
grant_roleRole assigned to useruser_roleGranter ID, role type, scope
revoke_roleRole removed from useruser_roleRevoker ID, role type, scope
role_inheritedRole inherited from organizationuser_roleInheritance source

Event and Organization Management

Event Operations

ActionDescriptionTarget TypeLogged Information
create_eventNew event createdeventCreator ID, organization context
update_eventEvent details modifiedeventEditor ID, changed fields
activate_eventEvent activatedeventActivator ID
deactivate_eventEvent deactivatedeventDeactivator ID, reason

Organization Operations

ActionDescriptionTarget TypeLogged Information
create_organizationNew organization createdorganizationCreator ID
update_organizationOrganization details modifiedorganizationEditor ID, changed fields
add_organization_memberUser added to organizationorganizationAdder ID, new member ID, role
remove_organization_memberUser removed from organizationorganizationRemover ID, removed member ID

Invitation Management

ActionDescriptionTarget TypeLogged Information
create_inviteInvitation link createdinviteCreator ID, target role, expiration
redeem_inviteInvitation usedinviteRedeemer ID, assigned role
expire_inviteInvitation expiredinviteExpiration timestamp
revoke_inviteInvitation manually revokedinviteRevoker ID, revocation reason

System Administration

ActionDescriptionTarget TypeLogged Information
update_system_settingsSystem configuration changedsystem_settingAdmin ID, setting key, change type
database_migrationDatabase schema updatedsystemMigration version, execution time
security_scanSecurity audit performedsystemScan type, findings summary

Audit Log Access and Viewing

Access Control

Audit log access is strictly controlled based on user roles:

Event-Level Audit Logs

  • Event Admins: Can view all audit logs for their events
  • Responders: Can view audit logs for incidents they're involved with
  • Reporters: Cannot access audit logs directly

Organization-Level Audit Logs

  • Organization Admins: Can view all audit logs for their organization and its events
  • Organization Viewers: Can view limited audit logs (non-sensitive actions)

System-Level Audit Logs

  • System Admins: Can view all audit logs across the entire system
  • Regular Users: Cannot access system-level audit logs

Audit Log Viewing Interfaces

Web Interface

  • Event Audit Page: /events/{eventSlug}/audit
  • Organization Audit Page: /orgs/{orgSlug}/audit
  • System Audit Page: /admin/system/audit

API Endpoints

  • Event Audit API: GET /api/audit/events/{eventId}/audit
  • Organization Audit API: GET /api/audit/organizations/{organizationId}/audit
  • System Audit API: GET /api/audit/system/audit

All audit log interfaces support:

  • Time Range Filtering: Filter by date/time ranges
  • Action Type Filtering: Filter by specific action types
  • User Filtering: Filter by specific users
  • Target Type Filtering: Filter by entity types (incident, user, etc.)
  • Text Search: Search within action descriptions
  • Sorting: Sort by timestamp, action, user, or target type

Audit Log Implementation

Automatic Logging

Audit logging is integrated into the service layer:

Audit Log Storage

  • Database Table: AuditLog table in PostgreSQL
  • Encryption: Audit logs are encrypted at rest

Performance Considerations

  • Asynchronous Logging: Audit logs are written asynchronously to avoid performance impact
  • Batch Processing: Multiple audit entries can be batched for efficiency
  • Indexing: Database indexes optimize audit log queries
  • Pagination: Large audit log results are paginated

Security and Compliance

Audit Log Security

  • Immutable Records: Audit logs cannot be modified after creation
  • Integrity Verification: Checksums ensure audit log integrity
  • Access Monitoring: Access to audit logs is itself audited
  • Encryption: All audit data is encrypted at rest and in transit

Monitoring and Alerting

Audit Log Monitoring

  • Failed Audit Writes: Alert when audit logging fails
  • Suspicious Patterns: Detect unusual access patterns
  • Privilege Escalation: Monitor for unauthorized role changes
  • Data Access Anomalies: Unusual data access patterns

Security Alerts

  • Multiple Failed Logins: Potential brute force attacks
  • Privilege Changes: Unauthorized role modifications
  • Mass Data Access: Bulk data downloads or access
  • After-Hours Activity: Unusual activity outside business hours

Dashboard Metrics

  • Audit Volume: Number of audit events over time
  • User Activity: Most active users and action types
  • Error Rates: Failed actions and error patterns
  • Compliance Status: Current compliance posture

Audit Log Analysis

Common Analysis Patterns

Incident Investigation

  1. Timeline Reconstruction: Build complete timeline of incident handling
  2. Access Tracking: Who accessed sensitive incident data
  3. Decision Audit: Track decision points and rationale
  4. Communication Analysis: Review comment and notification patterns

Security Analysis

  1. Access Pattern Analysis: Identify unusual access patterns
  2. Privilege Escalation Detection: Monitor for unauthorized role changes
  3. Data Exfiltration Detection: Track large data downloads or exports
  4. Account Compromise Indicators: Unusual login patterns or activities

Performance Analysis

  1. User Workflow Optimization: Identify bottlenecks in user workflows
  2. System Usage Patterns: Understand how the system is being used
  3. Feature Adoption: Track adoption of new features
  4. Error Pattern Analysis: Identify common user errors or system issues

Audit Analytics Tools

  • Built-in Dashboards: Pre-configured analytics dashboards
  • Custom Queries: SQL-based audit log analysis
  • Export Integration: Integration with external analytics tools
  • API Access: Programmatic access to audit data for custom analysis

Troubleshooting and Maintenance

Common Issues

Missing Audit Logs

  • Service Integration: Verify audit logging is integrated in all service methods
  • Database Connectivity: Check database connection for audit writes
  • Async Processing: Ensure asynchronous audit processing is working

Performance Issues

  • Database Indexing: Verify audit log table indexes are optimized
  • Query Optimization: Optimize slow audit log queries
  • Archival Process: Ensure old logs are being archived properly

Access Issues

  • Permission Configuration: Verify role-based access to audit logs
  • API Authentication: Check API authentication for audit endpoints
  • UI Integration: Ensure audit log UI is properly integrated

Maintenance Tasks

  • Regular Archival: Archive old audit logs to long-term storage
  • Index Optimization: Maintain database indexes for performance
  • Retention Policy: Enforce audit log retention policies
  • Backup Verification: Verify audit log backups are working

Screenshots Needed

The following screenshots would enhance this documentation:

  1. Event audit log page - Main audit log interface for events
  2. Audit log filtering - How to filter and search audit logs
  3. System audit dashboard - System-wide audit log overview
  4. Audit log details - Detailed view of individual audit entries
  5. Compliance report - Example of generated compliance report
  6. Audit analytics dashboard - Metrics and analysis of audit data
  7. Mobile audit view - How audit logs appear on mobile devices
  8. Audit log export - Exporting audit data for external analysis