Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Enhance Activity Log with Detailed and Contextual Entries #1051

Open
Maximilian1021 opened this issue Nov 21, 2024 · 0 comments
Open

Comments

@Maximilian1021
Copy link

Feature Description

Currently, the Activity Log provides only general information about changes, such as "Server updated." This makes it difficult to track specific changes and understand their reasons. For critical actions like server suspensions or account-related changes (e.g., coins, roles, vouchers), more transparency is needed.

A more detailed logging system that records not only the type of change but also the reason behind it would significantly improve traceability and efficiency.

Examples:

  • **Server suspended:** Log the reason, such as "Server suspended due to insufficient funds" or "Server suspended due to inactivity."
    
  • **Coins adjustments:** Log credits or deductions with a reason, e.g., "Coins deducted for overdue payment."
    
  • **Role changes:** Log the reason for role modifications, e.g., "Role 'Admin' removed due to policy violation."
    
  • **Voucher actions:** Include details on voucher creation, redemption, or expiration.
    

Solution Idea

Expand the Activity Log to include more precise entries and the reasons behind actions:

Server suspension or reactivation:
    Old entry: Server updated
    New entry:
        Server suspended due to insufficient funds.
        Server suspended due to inactivity for 30 days.
        Server unsuspended (manual action by admin).

Coins adjustments:
    Old entry: Account updated
    New entry:
        User 'john@example.com' credited with 100 Coins (Reason: Voucher redemption).
        User 'jane@example.com' debited by 50 Coins (Reason: Overdue payment).

Role changes:
    Old entry: User updated
    New entry:
        Role 'Admin' assigned to user 'john@example.com' (Reason: Promotion).
        Role 'Support' removed from user 'jane@example.com' (Reason: Account inactive).

Voucher actions:
    Voucher creation:
        Old entry: Voucher updated
        New entry: Voucher 'SUMMER2024' created (Value: 10€; Expires: 2024-12-31; Created by admin).
    Voucher redemption:
        Old entry: Voucher updated
        New entry: Voucher 'SUMMER2024' redeemed by user 'john@example.com' (Value: 10€; Applied to invoice #12345).
    Voucher expiration:
        Old entry: Voucher updated
        New entry: Voucher 'WINTER2023' expired (Value: 5€ unused).

Implementation details:

Extend backend logic:
    Identify specific events (e.g., server status changes, coins adjustments, role modifications).
    Add a field for reasons behind the changes in the log entries.
Save "before" and "after" values for better traceability.
Allow administrators to optionally specify reasons for manual changes.

Additional Info

Additional Info

Target Audience: Administrators and support staff who need to track changes to servers, user accounts, coins, or vouchers.
Benefits:
    Enhanced transparency.
    Simplified troubleshooting for support inquiries.
    Improved security monitoring.
Challenges:
    Ensure privacy-compliant storage of log entries (e.g., no sensitive data stored unencrypted).
    Maintain performance with large log volumes.

Anything Else

Filtering options: Search logs by reason, action type, user, or date.
Export capability: Provide logs as CSV or JSON for analysis.
Notifications: Enable alerts for critical events (e.g., server suspension due to insufficient funds).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant