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

Better player monitoring #8

Merged
merged 4 commits into from
Mar 4, 2024
Merged

Better player monitoring #8

merged 4 commits into from
Mar 4, 2024

Conversation

thejcpalma
Copy link
Owner

Improved Player Activity Monitoring

Summary

This pull request addresses multiple improvements across different aspects of the project, focusing on enhancing the player activity monitoring, refactoring the default credential checks, redacting sensitive information in the server start function, and updating documentation for better clarity.

Motivation and Context

The motivation behind these changes is to improve the overall user experience, increase robustness in handling player activity, ensure security in default credential checks, enhance server start functionality, and provide comprehensive documentation updates.

And mainly to improve webhook experience with people being able to customize the messages more

Description

Player Activity Monitoring

  • Enhanced player monitor logic and respective logs and webhook messages to handle player uid and steam id placeholders.
    • PLAYER_NAME for the in-game player name
    • PLAYER_UID for the player unique identifier
    • PLAYER_STEAM_UID for the player Steam ID
  • Player name, UID, and Steam ID are now printed in the logs for easy identification of the player.
  • Improved handling of players with special characters, preventing RCON timeout issues.
  • Logged possible steam profile links and respective names in the profile in docker logs to help identify players when Steam ID is invalid. These will also be logged in the player join/leave messages if PLAYER_STEAM_UID is present in them.

Check Default Credentials

  • Refactored the check_default_credentials function to always check the PalWorldSettings.ini file.
  • Now uses the PalWorldSettings.ini file to check if the default credentials are still present, avoiding conditional statements and ensuring compatibility with all configuration modes.

RCON

  • Fixed the rconcli wrapper to output cleanly without ANSI codes by changing the last print to simple echo.

Server Start

  • Redacted RCON port setting in the server start function for enhanced security.

Documentation

  • Updated documentation with logging format details and information about invalid Steam IDs for better user understanding.

Testing Instructions

These changes were tested thoroughly by:

  • Executing rconcli with RCON commands and verifying clean outputs (checking each ASCII code for every byte on the output).
  • Monitoring player activities and ensuring accurate logs and webhook messages.
  • Checking default credentials using the PalWorldSettings.ini file.
  • Starting the server and validating the redacted RCON port on the logs.
  • Reviewing and validating documentation updates for clarity and accuracy.

Checklist

  • I have performed a self-review of my own code
  • I have updated the documentation (if necessary)
  • My changes do not introduce any breaking changes or bugs

@thejcpalma thejcpalma merged commit e69b282 into main Mar 4, 2024
1 check passed
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

Successfully merging this pull request may close these issues.

1 participant