2019-04-24 02:14:35 +08:00
|
|
|
# Minecraft Input Plugin
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
The `minecraft` plugin connects to a Minecraft server using the RCON protocol
|
|
|
|
|
to collects scores from the server [scoreboard][].
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
This plugin is known to support Minecraft Java Edition versions 1.11 - 1.14.
|
|
|
|
|
When using an version of Minecraft earlier than 1.13, be aware that the values
|
|
|
|
|
for some criterion has changed and may need to be modified.
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2021-11-25 03:18:53 +08:00
|
|
|
## Server Setup
|
2019-04-24 02:14:35 +08:00
|
|
|
|
|
|
|
|
Enable [RCON][] on the Minecraft server, add this to your server configuration
|
|
|
|
|
in the [server.properties][] file:
|
|
|
|
|
|
|
|
|
|
```conf
|
2017-06-24 07:54:12 +08:00
|
|
|
enable-rcon=true
|
|
|
|
|
rcon.password=<your password>
|
|
|
|
|
rcon.port=<1-65535>
|
|
|
|
|
```
|
|
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
Scoreboard [Objectives][] must be added using the server console for the
|
|
|
|
|
plugin to collect. These can be added in game by players with op status,
|
|
|
|
|
from the server console, or over an RCON connection.
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
When getting started pick an easy to test objective. This command will add an
|
|
|
|
|
objective that counts the number of times a player has jumped:
|
2021-11-25 03:18:53 +08:00
|
|
|
|
|
|
|
|
```sh
|
2019-04-24 02:14:35 +08:00
|
|
|
/scoreboard objectives add jumps minecraft.custom:minecraft.jump
|
|
|
|
|
```
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
Once a player has triggered the event they will be added to the scoreboard,
|
|
|
|
|
you can then list all players with recorded scores:
|
2021-11-25 03:18:53 +08:00
|
|
|
|
|
|
|
|
```sh
|
2019-04-24 02:14:35 +08:00
|
|
|
/scoreboard players list
|
2017-06-24 07:54:12 +08:00
|
|
|
```
|
|
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
View the current scores with a command, substituting your player name:
|
2021-11-25 03:18:53 +08:00
|
|
|
|
|
|
|
|
```sh
|
2019-04-24 02:14:35 +08:00
|
|
|
/scoreboard players list Etho
|
|
|
|
|
```
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2022-10-27 03:58:36 +08:00
|
|
|
## Global configuration options <!-- @/docs/includes/plugin_config.md -->
|
|
|
|
|
|
|
|
|
|
In addition to the plugin-specific configuration settings, plugins support
|
|
|
|
|
additional global and plugin configuration settings. These settings are used to
|
|
|
|
|
modify metrics, tags, and field or create aliases and configure ordering, etc.
|
|
|
|
|
See the [CONFIGURATION.md][CONFIGURATION.md] for more details.
|
|
|
|
|
|
2023-01-12 23:55:21 +08:00
|
|
|
[CONFIGURATION.md]: ../../../docs/CONFIGURATION.md#plugins
|
2022-10-27 03:58:36 +08:00
|
|
|
|
2021-11-25 03:18:53 +08:00
|
|
|
## Configuration
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2022-05-24 21:49:47 +08:00
|
|
|
```toml @sample.conf
|
2022-04-12 05:32:25 +08:00
|
|
|
# Collects scores from a Minecraft server's scoreboard using the RCON protocol
|
2019-04-24 02:14:35 +08:00
|
|
|
[[inputs.minecraft]]
|
|
|
|
|
## Address of the Minecraft server.
|
|
|
|
|
# server = "localhost"
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
## Server RCON Port.
|
|
|
|
|
# port = "25575"
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
## Server RCON Password.
|
|
|
|
|
password = ""
|
2022-04-12 05:32:25 +08:00
|
|
|
|
|
|
|
|
## Uncomment to remove deprecated metric components.
|
|
|
|
|
# tagdrop = ["server"]
|
2019-04-24 02:14:35 +08:00
|
|
|
```
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2021-11-25 03:18:53 +08:00
|
|
|
## Metrics
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2019-04-24 02:14:35 +08:00
|
|
|
- minecraft
|
|
|
|
|
- tags:
|
|
|
|
|
- player
|
|
|
|
|
- port (port of the server)
|
|
|
|
|
- server (hostname:port, deprecated in 1.11; use `source` and `port` tags)
|
|
|
|
|
- source (hostname of the server)
|
|
|
|
|
- fields:
|
|
|
|
|
- `<objective_name>` (integer, count)
|
2017-06-24 07:54:12 +08:00
|
|
|
|
2021-11-25 03:18:53 +08:00
|
|
|
## Sample Queries
|
2017-06-24 07:54:12 +08:00
|
|
|
|
|
|
|
|
Get the number of jumps per player in the last hour:
|
2021-11-25 03:18:53 +08:00
|
|
|
|
2020-08-11 03:50:48 +08:00
|
|
|
```sql
|
2019-04-24 02:14:35 +08:00
|
|
|
SELECT SPREAD("jumps") FROM "minecraft" WHERE time > now() - 1h GROUP BY "player"
|
2017-06-24 07:54:12 +08:00
|
|
|
```
|
|
|
|
|
|
2021-11-25 03:18:53 +08:00
|
|
|
## Example Output
|
|
|
|
|
|
2023-04-04 19:43:49 +08:00
|
|
|
```text
|
2019-04-24 02:14:35 +08:00
|
|
|
minecraft,player=notch,source=127.0.0.1,port=25575 jumps=178i 1498261397000000000
|
|
|
|
|
minecraft,player=dinnerbone,source=127.0.0.1,port=25575 deaths=1i,jumps=1999i,cow_kills=1i 1498261397000000000
|
|
|
|
|
minecraft,player=jeb,source=127.0.0.1,port=25575 d_pickaxe=1i,damage_dealt=80i,d_sword=2i,hunger=20i,health=20i,kills=1i,level=33i,jumps=264i,armor=15i 1498261397000000000
|
2017-06-24 07:54:12 +08:00
|
|
|
```
|
2019-04-24 02:14:35 +08:00
|
|
|
|
2020-05-14 15:41:58 +08:00
|
|
|
[server.properties]: https://minecraft.gamepedia.com/Server.properties
|
2019-04-24 02:14:35 +08:00
|
|
|
[scoreboard]: http://minecraft.gamepedia.com/Scoreboard
|
|
|
|
|
[objectives]: https://minecraft.gamepedia.com/Scoreboard#Objectives
|
|
|
|
|
[rcon]: http://wiki.vg/RCON
|