NidToolbox: IP Logger module 1.7.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





NEW - if you would like to have your server logo appear in the notifications area in messages that come from NidToolbox. Please join my Discord https://discord.nidaren.net/ and post them in #server-logos channel.


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


Support is provided as well as suggestions are accepted on my Discord here


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.
  • Possible to whitelist user or specific 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-AllowSameIpUser


Adds player to the same IP whitelist.

/iplog-AllowSameIpUser User targetUser

Code
/iplog-AllowSameIpUser userName



/iplog-RemoveSameIpUser


Removes player from the same IP whitelist.

/iplog-RemoveSameIpUser User targetUser

Code
/iplog-RemoveSameIpUser userName



/iplog-AllowSameAddress


Adds IP Address to the same IP whitelist.

/iplog-AllowSameAddress string ipAddress

Code
/iplog-AllowSameAddress ipAddress



/iplog-RemoveSameAddress


Removes IP Address from the same IP whitelist.

/iplog-RemoveSameAddress string ipAddress

Code
/iplog-RemoveSameAddress ipAddress



/iplog-SameAddressList


Lists all players on the same IP whitelist.

/iplog-SameAddressList

Code
/iplog-SameAddressList



/iplog-SameIpWhitelist


Lists all players on the same IP whitelist.

/iplog-SameIpWhitelist

Code
/iplog-SameIpWhitelist
  • Version 1.7.3

    • Clarifies descriptions on IP Logger same IP Whitelist commands.
    • Changes command iplog-allowsameip to iplog-AllowSameIpUser.
    • Changes command iplog-removesameip to iplog-RemoveSameIpUser.
    • Changes command iplog-sameipwhitelist to iplog-SameIPUserWhitelist.
  • Version 1.7.2

    Changes format of filenames for IP logs. Now they follow name_steamid.log or name_slgid.log (preferring steamid). All special characters from names are removed.

    Old files are not deleted, but instead moved to ObsoleteLogs folder.

    Requires nid-core 1.7.4

  • Version 1.7.1

    * Updated project to net7.

  • Version 1.7.0

    Compatibility with Eco 9.7

  • Version 1.6.0

    * Updated module to Eco version 9.6.0


    * Updated to net6.


    * REQUIRES: EM-Framework 3.3.0-beta2 or higher

  • Version 1.5.1

    • Added ability to whitelist specific IP Addresses for same IP check. Helpful in situations when SLG connects users through a relay servers and causing massive same IP span.
    • Added new commands: iplog-AllowSameAddress, iplog-RemoveSameAddress, iplog-SameAddressList. Refer to the documentation for details.
    • Fixed user settings for some properties not being taken into account when using /iplog-reload.
    • Added validity checks for manually added IP Addresses to the configuration file. Invalid IP Entires are ignored and user is informed.
    • Fixed iplog-reload not taking into account some properties changed by the user.
    • Requires nid-Core of 1.5.5;
  • Version 1.5.0

    * (RC.2) Module output filename updated to match namespace.


    * Module updated to Eco 9.5.0


    * REQUIRES: EM-Framework 3.2.0-RC.3 or higher.

  • 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