
Plan | Player Analytics
The Ultimate Tool to monitor Minecraft player activity! Bukkit/Sponge/Bungee/Velocity support.
Список изменений
5.7 DEV build 3558
This dev release introduces MSPT Jitter, performance graph rewrite, MC version 26.2 on fabric, bugfixes and improvements.
Special thanks to AnttiMK & Minecraft0122 for contributions to this update
Change log
Website
MSPT Jitter
Added new metric called MSPT Jitter which displays the average and maximum difference between subsequent tick speeds (Milliseconds Per Tick). Example: MSPT of 35, 36, 34, 80, 37 -> Jitter = 1, 2, 46, 43 -> Average=23, Max=46.
New performance metrics
Performance tab was rewritten to include more interesting metrics that reflect how players and chunks impact server load. The impact of players on Entities and Chunks was also taken into account since some servers unload all chunks without players present.
There is now a help button available on the Performance as Numbers card to explain each metric.
Updated Server Performance graph
Server performance graph is now less jumpy and you can select any of the data you want to see, using either presets on the left, or the labels at the bottom.
Under the hood the graph no longer renders 6 different HighCharts graphs, instead changing a single instance whenever you pick data. This also means the graph date-range no longer jumps in annoying way when you switch what you are viewing.
New sessions tab
Sessions tab was rewritten on all pages (Network, Server, Player) and it now gets you up to 10k sessions, which can be searched further and exported as CSV. You can choose a date range using the session calendar or the new date picker component.
All of the data on session page will reflect the selected dates. All ongoing sessions within selected date range are shown, even if they didn't start within the date range, but before it.
On the Export website this feature is not available and defaults to most recent data (Similar to before)
Other
The new date picker component is in use anywhere you can input dates to a text field
Also
- Servers overview (Network) now loads a lot faster (It only gets the data for the server you're looking at)
- Server overview, Network overview, Online Acctivity overview, Sessions and Performance tabs all got their number tables changed to get individual values independently from each other. This speeds up loading of data since you no longer need to wait for the slowest query to see all data.
Bugfixes
- Fixed some IPv6 setups being unable to login
- Fixed Average MSPT not showing if MSPT was under 1ms
- Fixed Hour by Hour showing Daily new players and not hourly
- Fixed date saying 'Today' if it was in the future
- Fixed Alternative_IP.Address changes not being reflected in Javascript due to Cache policy
- Fixed boolean Extension values causing 'variable t not found' error.
- Fixed component Extension values erroring
- Fixed redirects on reverse-proxy setups with subdirectory addresses
- Fixed value not defined error on Playerstable when showing time or date from plugin data on player table
- Fixed stacked players online graph not stacking
- Fixed Players Online tooltip going under table headers
/v1/datapoint
To implement dynamic date based filtering seen above, new endpoint /v1/datapoint was implemented. It makes implementing new single-value metrics a lot easier, since it's possible to produce tables of metrics by just defining a column 'time slot' and each row as a metric - you can already see impacts with the new metrics that were already added. This endpoint will be further expanded upon in the future.
This endpoint takes in after/afterMillisAgo, before/beforeMillisAgo and server or player parameters. server parameter can take in multiple server uuids comma separated. The endpoint returns 200, 302 (cached by browser) or 400 (invalid type). Please use ETag for caching if calling this endpoint from program code.
Example /v1/datapoint?type=PLAYTIME&afterMillisAgo=86400000&server=uuid will get you playtime for last 24h on a server.
All the supported datapoint types can be found from https://github.com/plan-player-analytics/Plan/blob/master/Plan/common/src/main/java/com/djrapitops/plan/delivery/rendering/json/datapoint/DatapointType.java
Deprecated endpoints
Following endpoints are deprecated in favor of the new /v1/datapoint endpoint:
- /v1/serverOverview
- /v1/network/overview
- /v1/network/servers
- /v1/onlineOverview
- /v1/sessionOverview
- /v1/performanceOverview
- /v1/network/performanceOverview
Accessing the deprecated endpoints will print a warning on the console (Due to performance impact).
New Web permissions
This will be expanded upon in the future. This endpoint uses data.player, data.server, data.network (and further subdivisions) to control visiblity. These permissions are granted automatically based on existing permissions:
- access.network -> group is given data.network
- access.server -> group is given data.server
- access.player -> group is given data.player
/v1/datapoint will also check for access.player and access.player.self if looking for player specific data.
Fabric 26.2
- Updated to Fabric 26.2 which required no API changes.
- AnttiMK implemented Fabric 26.1 support. 1.21.9-1.21.11 are no longer supported by this version.
Config
- Display_options.Sessions.Show_on_page setting has been removed
- Changed default value for
Time.Thresholds.Remove_time_series_afterto 3650 on Bungee/Velocity (Default is not automatically replaced)
Locale
- CN locale updated by Minecraft0122
Extensions
- Fixed error related to Folia and CMI extension
Other
- Added database transaction queue information to /plan info command
- Fixed deadlock related to ban status update task
- Fixed /plan db uninstalled printing "success" before completing properly
- AnttiMK updated Java compile options so that test code can use features from newer JDKs
- Optimized Playerbase development graph generation query
- Optimized Players online peak query
- Possibly fixed TPSTableIdPatch failing on SQLite due to table lock
