NidToolbox: IP Logger module 1.1.3

Due to human (non-bot) spam the first contribution of a user has to be reviewed and activated manually, all further contributions do not require this.
As long as a user does not have at least one reviewed and activated contribution, the user is unable to edit his profile, set a avatar, title picture or a signature.

Contains IP logger module for NidToolbox Light server tool-set. It allows for real time motoring and logging of all login and logout events. Highly customisable.

1573-nidtoolbox-design01-nid-64-png

IP Logger module

for NidToolbox Light

requries nid-core module available here



1586-default-violet-2-png




Provides ability to log Login and Logout events of your citizens, registering IP Address, time, date, steam ID, slg ID and more.



IP Logger module allows:

  • Registers each event of login, logout (or both) of each citizen connecting to your server.
  • Server owners may decide which events they want to monitor and where if at all to store the data.
  • Allows for global IP history file, per user ones, or both.
  • Enabling of the features can be done via in-game commands or through editing of the settings file.
  • Target of the log can be set to server console, server log, NidToolbox log - none, some or all of these in any combination that suits the server owner.
  • Ability to create a comma-delimited .csv file for administrators who like to export their server data to external tools for analytics.
  • Can notify about players using same IP address.
  • Whitelist for players who are allowed to play from the same IP Address (won't trigger the notification for them).

Requirements:

As any module of NidToolbox set, it requires nid-core version 1.0.3+ module, available in the main forum thread: here


How to install:

  1. Unpack .zip archive
  2. Copy nid-iplogger.dll to Mods\NidToolbox\Modules


Settings files:

Config files are located at Configs\Mods\NidToolbox\IPLogger.json



Output files:


Output files (logs) are stored at Configs\Mods\NidToolbox\Logs\IPLogger\


Global IP Log file: 0-Global.log and 0-Global.csv


Per user log file name has a form of userName_ServerID.log i.e nidaren_SrvID-1.log and is per user.


Same IP Notifications:


When enabled online Admins will get a notification to their mailbox, when there are two players with same IP address.


Example output:

Code
Date          Hour        Event     IP Address      SteamID               slg ID        Server ID     Character Name
28.09.2020    11:12:50    Login     123.456.7.8     11222222211111110     slg123455     1             nidaren       
28.09.2020    11:14:56    Logout    disconnecting   11222222211111110     slg123455     1             nidaren       


Available commands:


/help IPLog


Displays information about all commands contained within this module.


/iplog-enable


Sets the whole module to enabled or disabled state

/iplog-enable bool trueFalse

Code
/iplog-enable true/false


/iplog-sameip

Enables or disables the notifications about users connecting from same IP Address. Disabled by default.

/iplog-sameip bool trueFalse

Code
/iplog-sameip true/false



/iplog-logouts


Sets the module to also register citizen's logouts. Set to true by default.

/iplog-logouts bool trueFalse

Code
/iplog-logouts true/false


/iplog-console


Sets the module to write to server console.

/iplog-console bool trueFalse

Code
/iplog-console true/false


/iplog-global

Sets creation of a gloal IP log history file.

/iplog-global bool trueFalse

Code
/iplog-global true/false


/iplog-perUser

Sets creation of a per user IP log history files.

/iplog-per user bool trueFalse

Code
/iplog-peruser true/false


/iplog-reload

Reload module configuration from the config files.

/iplog-reload

Code
/iplog-reload


/iplog-serverlog


Sets the module to write to server log - located at Server\Logs\ (default eco log).

/iplog-serverlog bool trueFalse

Code
/iplog-serverlog true/false


/iplog-csv


Enables or disables the comma delimited file with all the login and logout data, with user information. Disabled by default.

/iplog-csv bool trueFalse

Code
/iplog-csv true/false



/iplog-AllowSameIp


Adds player to the same IP whitelist.

/iplog-AllowSameIp User targetUser

Code
/iplog-AllowSameIp userName


/iplog-RemoveSameIp


Removes player from the same IP whitelist.

/iplog-RemoveSameIp User targetUser

Code
/iplog-RemoveSameIp userName


/iplog-SameIpWhitelist


Lists all players on the same IP whitelist.

/iplog-SameIpWhitelist

Code
/iplog-SameIpWhitelist
  • Version 1.1.3

    • IP Logger now allows for global IP log file, per user IP log files, or both.
    • Fixed /iplog-csv command having no effect. Thx @Dave247 for reporting!
    • Added command /iplog-global - sets creation of a gloal IP log history file. Thx @Dave247 for suggestion.
    • Added command /iplog-perUser- sets creation of a per user IP log history files.
    • Added command /iplog-reload- reloads module configuration from the config files.
  • Version 1.1.2

    Version 1.1.2

    • Compatibility patch with EM Framework 3.1.0
    • Requires EM Framework 3.1.0
  • Version 1.1

    Version 1.1

    • Migrated project to Net5.
    • Compatibility patch with Eco version 9.4
  • Version 1.0.2

    Version 1.0.2

    • Fixed module naming issue in Server Configurator GUI.
    • Fixed error introduced by recent versions of Eco, where logout event would be sometimes reported twice.
    • Added Same IP Whitelist option. Players added to whitelist won't trigger the warning.
    • Added new commands related to Same IP Whitelist option (see module page for more info).
    • Fixed error with IP Log file creation when player name contains illegal characters. They are now replaced with "_".
  • Version 1.0.1

    Version 1.0.1

    • Added NotifySameIp togabble to the config. When set to enabled, Server Admins will be informed about players sharing same IP Addresses. Notification is sent to the "important" section of the mail in the upper left side of the screen. Starts as disabled;
    • Added requirement for nid-core module enforcement. If the module is not found or in wrong version, it will be reported to the server owner, instead of showing default net cryptic error message.
  • Version 1.0.0