Minecraft Mods

myMineMin (Web based Log parser, chat log and other stats)

  • 17
  • 9
  • 12
avatar aamche
Level 57 : Grandmaster Engineer
54
MyMineMin makes it possible to view chat logs, user activity and other data in an easy to understand format via your web browser. Designed to enable server admins to better understand what’s going on in their server.

The system exports log data from one or more servers to a central database. From there a web based user interface displays the data in a human readable format. The system can exist on one server or across multiple servers.

Demo (Build 2)

Official Page

Features

  • Web Browser Responsive UI
  • Overview, Multi server
  • Analytical Graph
  • Chat log
  • Activity Log
  • Player Login Location Map
  • Easily view Whitelist, ban list and ops

Game Servers and Platforms

  • Minecraft: Live Query and log passingMod Support: Spigot (Bukkit), griefPrevention, mineversechat (or similar chat log programs, try this one if there’s no chat)
  • Terraria: Live Query and log passing
  • TeamSpeak: Live Query

Whats New

See updates tab

Requirements

  • Minecraft, tested with vanilla and spigot/bukkit (looking for more logs)
  • Web server (developed for Apache, but others should work too), can be on different server to minecraft
  • MySQL database, can be on different server to minecraft
  • PHP
  • PHP - Zlib (default on most installs, required as old logs are compressed)

Installation

Extract the files from the zip. There are 2 programs to install, the exporter script, and the web UI (User Interface).

These instructions assume you know how to run php scripts, upload files to servers, manage mysql databases.


Database
  1. Create the database and update the file config/db.php
  2. Run the SQL in the file install/install.sql on your mysql server, on many web servers you can use phpMyAdmin
  3. Remove the installation directory if it's web accessible
If you are running the exporter and UI on different servers, make sure that those servers can access the database, you may need to add their IP to the list of IPs that can access the database remotely.


Uploading

Single Server
If your web server and minecraft server are on the same server then copy all files across. Remove the install folder.

Multiple Servers
For web servers, remove the exporter and install folders.


Exporter
The script for exporting the data to the database is exporter/cron.php

For servers exporting data you will need to configure config/servers.php. This file contains the list of individual minecraft server installs to export. This does not need to be configured on the UI as details are read from the database.
  1. First time, run at the command line with a user that has permission to read the minecraft log files. This will bulk load into the database and expose any errors. This process may take some time.
  2. Run again to get an idea of the time it takes to parse the daily logs, remember most your users will probably play at night so allow more time.
  3. Add exporter/cron.php to cron or other scheduling program at 10 - 60 intervals to suite your needs. Be careful to not have exports overlap, this will cause duplication issues. On many linux systems you can use a program called flock to force one instance only to run at a time.

UI (User Interface)
View the folder through a web browser after the export has run at least once.


Common Issues

Can not access/can not read errors
Either $cfg['directory_minecraft'] is pointing to the wrong directory or the exporter doesn't have read access to the files. For Apache you can either add www-data to your minecraft user group, or allow the files in the minecraft server directory to be read by all users (0775)

It's really slow!!!
Speed depends on the size of the log files and the speed of your web server. Because we are parsing log files every line of the file must be read, so it can take a while with large files.

Where's the Auth?
Currently use a password protected directory which most web servers have. Windows web servers IIS password protect directory and Apache .htaccess. Auth integration is in the works.
Progress100% complete
Game VersionMinecraft 1.10
Tags

15 Update Logs

Build #19 : 10/29/2016 6:19:44 amOct 29th, 2016

Added: Gamespy4 protocal for Minecraft
Added: Toggle different chat/activity messages
Added: Minecraft mod venturechat (replaces minecversechat)
Added: Last 50 chat messages on view user
Fixed: Navigation issues remember which server is being browsed
Fixed: Minecraft query versioning, defaulted to 1.8+
Fixed: Server selector for single server set-ups
LOAD MORE LOGS

1
09/18/2016 11:40 am
Level 3 : Apprentice Miner
siteXart
Not displaying chat messages at all, and last version is too buggy in web side.
Also it's bad to hide player names but show passwords in chat log - login time can be used to associate.
Using previous version is almost ok, but no chat messages, commands only displayed on web.
1
10/29/2016 6:21 am
Level 57 : Grandmaster Engineer
aamche
Build 19,
I've implemented some password filtering. Lot's of bug improvement. Keep posting areas for improvements so I can keep working on it.
1
05/08/2016 11:32 pm
Level 1 : New Miner
MomCraft
Hello, I want to try this but I have trouble in filling in the config/servers.php

I use a host for Spigot 1.9.2. They only give me Multicraft panel for my account. I don't know the exact address of my home directory (is it /home/userxyz? I don't know). So I don't know what to put in $servers[] 'directory'. Is it possible to manually upload my logs instead? So in the myMineMin I'll have a folder called logs and then I just upload my daily log there.

Can you please tell me whether it's possible? Would love to have the web based stats you offer :) Thanks!
1
05/09/2016 10:00 pm
Level 57 : Grandmaster Engineer
aamche
You can have the logs folder else where (copy files over). But the exporter part of the script and logs need to be on the same server. I think relative paths should work as well.
1
05/10/2016 12:03 pm
Level 1 : New Miner
MomCraft
Sorry if I didn't make myself clear. I have 2 hosts, let's say Host A for Minecraft (with MultiCraft control panel, and I don't know the actual path of spigot's log files) and Host B for my website (I know the full directory path and have FTP access there).

Host A (Minecraft)
- Runs Spigot 1.9.2
- Multicraft control panel
- 1 MySQL Database with remote connection enabled (other webhost can connect & query to this db, not just from localhost)
- I don't know the full path to my home directory

Host B (Website)
- Runs PHP & unlimited MySQL Database
- MySQL Database only accepts localhost connection
- I have access to SSH and FTP there, and I know the full path to my home directory

So I put MyMineMin php files in Host B. In the config/server.php file, I put Host A's MySQL login info as the database used to store the chat. I want to run the exporter manually, so I create folder "logs" in Host B and copy the log files from Host A to Host B.

My question is, what should I type in the "directory" section of the config/server.php in Host B? Is it Host A's or Host B's full path directory?

Thanks!
1
05/12/2016 7:06 pm
Level 57 : Grandmaster Engineer
aamche
Enter the parent directory of the logs files.
/home/server/

the exporter will use the following to access the log files
/home/server/logs/

this is because it also uses
/home/server/ops.json
/home/server/banned-players.json

/home/server/ doesn't need to be the actual directory where minecraft runs, just where the exporter can find the files to read.

Thanks for sticking with this, it can be a bit tricky, especially as everyone's set-ups are slightly different.

As you are running 2 set-ups you'll need to have 2 servers set-up in config/server.php, both will have different directories as they are different log sets.
/home/hostA/
/home/hostB/
1
10/13/2015 7:59 am
Level 66 : High Grandmaster Architect
boveybrawlers
Love the activity screen! I'm trying this out purely for that
1
04/09/2015 5:53 pm
Level 7 : Apprentice Prince
Blittz
First off, I love the idea of this.  I look forward to getting this working but I seem to be having trouble with it on my wamp install.  It might not like the idea of the directory being set to "C:\MinecraftFolder\Server" I did try just using \MinecraftFolder\Server but that didn't work either. I'm just getting the website nav bar, and a spinning blue circle. Any suggestions?
1
04/10/2015 7:57 pm
Level 57 : Grandmaster Engineer
aamche
C:\MinecraftFolder\Server looks correct. Try adding a trailing slash.


Some times permissions can be an issue.

Use chrome inspector to see if there a javascript error or a server error.
1
12/19/2014 9:19 pm
Level 21 : Expert Modder
flawlessbraz
Can use this 99% of people use  host providers
1
12/20/2014 2:20 am
Level 57 : Grandmaster Engineer
aamche
Are you saying you don't have access to log files? Because that's how the script works, to do it another way would be to make a different thing.

If you have access to the log files there maybe a way to link into it from a web hosting account on a different server, ftp/ssh or api hook perhaps. Happy to explore options. I have dedicated hardware myself.
1
11/26/2014 3:36 am
Level 25 : Expert Network
4377699683
I actually wrote a script that reads the log file and has functions that let you get stuff. Had planned to make something like this when I made that but got caught up in a more important project. But your class for reading the log ir far better. For many reasons: Regex mostly, i've never been good at regex... 
https://github.com/jdf221/minecraft-server-log-parse
And yours get's much more info...

*cough*github repository*cough*
Planet Minecraft Logo

Website

© 2010 - 2020
www.planetminecraft.com

Welcome