Joshi425/minecraft-exporter

Mojang API returns 204 status code (no content) response to invalid UUID (most likely added by forge mods)

Closed this issue · 5 comments

br337 commented

Running container both through docker and through docker-compose doesn't seem to work properly.
Minecraft forge server version 12.2.2.

$ sudo docker run -e RCON_HOST=127.0.0.1 -e RCON_PORT=25575 -e RCON_PASSWORD="password" -e FORGE_SERVER="True" -p 9700:8000 -v /opt/minecraft/tekkit/world:/world joshi425/minecraft_exporter
version: '3.1'
services:
  minecraft-exporter:
    image: 'joshi425/minecraft_exporter'
    environment:
      RCON_HOST: localhost
      RCON_PORT: 25575
      RCON_PASSWORD: password
      FORGE_SERVER: "True"
    ports:
    - 9700:8000
    volumes:
    - /opt/minecraft/tekkit/world:/world:ro

Both of these options return this:

RCON is enabled for 127.0.0.1
Traceback (most recent call last):
  File "minecraft_exporter.py", line 302, in <module>
    REGISTRY.register(MinecraftCollector())
  File "/usr/local/lib/python3.8/site-packages/prometheus_client/registry.py", line 24, in register
    names = self._get_names(collector)
  File "/usr/local/lib/python3.8/site-packages/prometheus_client/registry.py", line 64, in _get_names
    for metric in desc_func():
  File "minecraft_exporter.py", line 291, in collect
    for metric in self.update_metrics_for_player(player):
  File "minecraft_exporter.py", line 153, in update_metrics_for_player
    name = self.uuid_to_player(uuid)
  File "minecraft_exporter.py", line 40, in uuid_to_player
    self.map[uuid] = result.json()[-1]['name']
  File "/usr/local/lib/python3.8/site-packages/requests/models.py", line 897, in json
    return complexjson.loads(self.text, **kwargs)
  File "/usr/local/lib/python3.8/json/__init__.py", line 357, in loads
    return _default_decoder.decode(s)
  File "/usr/local/lib/python3.8/json/decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/local/lib/python3.8/json/decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

is the mc server in offline mode?
the mc server only stores the uuid for the players in its save so the exporter converts the uuid to the name using the mojang api.

br337 commented

The server runs in online mode.

server.properties

spawn-protection=0
max-tick-time=60000
generator-settings=
force-gamemode=false
allow-nether=true
gamemode=0
broadcast-console-to-ops=true
enable-query=false
player-idle-timeout=0
difficulty=1
spawn-monsters=true
op-permission-level=4
pvp=true
snooper-enabled=true
level-type=BIOMESOP
hardcore=false
enable-command-block=false
max-players=20
network-compression-threshold=256
resource-pack-sha1=
max-world-size=29999984
server-port=25565
server-ip=
spawn-npcs=true
allow-flight=false
level-name=world
view-distance=10
resource-pack=
spawn-animals=true
white-list=false
generate-structures=true
online-mode=true
max-build-height=256
level-seed=
prevent-proxy-connections=false
motd=No motd
enable-rcon=true
rcon.password=password
rcon.port=25575

These are the installed mods, if these might cause some problems.

drwxrwxr-x 2 brian brian     4096 Okt 28  2019  1.12.2/
-rw-rw-r-- 1 brian brian   190539 Okt 22  2019  Advanced+Machines-61.0.1.jar
-rw-rw-r-- 1 brian brian  4062630 Okt 22  2019  appliedenergistics2-rv6-stable-7.jar
-rw-rw-r-- 1 brian brian   108450 Okt 22  2019  Baubles-1.12-1.5.2.jar
-rw-rw-r-- 1 brian brian  5122856 Okt 22  2019 'BiblioCraft[v2.4.5][MC1.12.2].jar'
-rw-rw-r-- 1 brian brian  4696621 Okt 22  2019  BiomesOPlenty-1.12.2-7.0.1.2441-universal.jar
-rw-rw-r-- 1 brian brian  4773219 Okt 22  2019  buildcraft-all-7.99.24.3.jar
-rw-rw-r-- 1 brian brian   134367 Okt 22  2019  ChickenChunks-1.12.2-2.4.2.74-universal.jar
-rw-rw-r-- 1 brian brian  4754821 Okt 22  2019  Chisel-MC1.12.2-1.0.1.44.jar
-rw-rw-r-- 1 brian brian   704330 Okt 22  2019  CodeChickenLib-1.12.2-3.2.3.358-universal.jar
-rw-rw-r-- 1 brian brian   847938 Okt 27  2019  CoFHCore-1.12.2-4.6.3.27-universal.jar
-rw-rw-r-- 1 brian brian   532040 Okt 27  2019  CoFHWorld-1.12.2-1.3.1.7-universal.jar
-rw-rw-r-- 1 brian brian    73134 Okt 22  2019  CompactSolars-1.12.2-5.0.18.341-universal.jar
-rw-rw-r-- 1 brian brian  1641429 Okt 22  2019  ComputerCraft1.80pr1.jar
-rw-rw-r-- 1 brian brian   197149 Okt 22  2019  CTM-MC1.12.2-1.0.0.29.jar
-rw-rw-r-- 1 brian brian   223250 Okt 22  2019  EnderStorage-1.12.2-2.4.6.137-universal.jar
-rw-rw-r-- 1 brian brian   137190 Okt 22  2019  ExpandedEquivalence-1.12.2-13r.jar
-rw-rw-r-- 1 brian brian  5232265 Okt 22  2019  forestry_1.12.2-5.8.2.387.jar
-rw-rw-r-- 1 brian brian  1304958 Okt 22  2019  ForgeMultipart-1.12.2-2.6.2.83-universal.jar
-rw-rw-r-- 1 brian brian   935390 Nov  3  2019  FTBLib-5.4.3.149.jar
-rw-rw-r-- 1 brian brian   425034 Nov  3  2019  FTBUtilities-5.4.0.114.jar
-rw-rw-r-- 1 brian brian  2315477 Okt 22  2019  HammerCore-1.12.2-2.0.5.3.jar
-rw-rw-r-- 1 brian brian   453778 Okt 22  2019  Hwyla-1.8.26-B41_1.12.2.jar
-rw-rw-r-- 1 brian brian  8356436 Okt 22  2019  industrialcraft-2-2.8.170-ex112.jar
-rw-rw-r-- 1 brian brian    47765 Okt 22  2019  inventorysorter-1.12.2-1.13.3+57.jar
-rw-rw-r-- 1 brian brian   956692 Okt 22  2019  ironchest-1.12.2-7.0.72.847.jar
-rw-rw-r-- 1 brian brian  1920463 Okt 22  2019  journeymap-1.12.2-5.5.5.jar
-rw-rw-r-- 1 brian brian    21508 Nov  4  2019  Morpheus-1.12.2-3.5.106.jar
-rw-rw-r-- 1 brian brian   803400 Okt 22  2019  MrTJPCore-1.12.2-2.1.4.43-universal.jar
-rw-rw-r-- 1 brian brian   189885 Okt 22  2019  Netherending-Ores-1.12.2-1.3.jar
-rw-rw-r-- 1 brian brian  3217616 Okt 22  2019  OpenBlocks-1.12.2-1.8.1.jar
-rw-rw-r-- 1 brian brian  2639587 Okt 22  2019  OpenModsLib-1.12.2-0.12.2.jar
-rw-rw-r-- 1 brian brian  1113273 Feb 21 14:04  OpenPeripheral-1.7.10-AIO-8.jar
-rw-rw-r-- 1 brian brian  1812973 Okt 22  2019  ProjectE-1.12.2-PE1.4.1.jar
-rw-rw-r-- 1 brian brian  2036136 Okt 22  2019  ProjectRed-1.12.2-4.9.4.120-Base.jar
-rw-rw-r-- 1 brian brian    67384 Okt 22  2019  ProjectRed-1.12.2-4.9.4.120-compat.jar
-rw-rw-r-- 1 brian brian  1894139 Okt 22  2019  ProjectRed-1.12.2-4.9.4.120-fabrication.jar
-rw-rw-r-- 1 brian brian  3923751 Okt 22  2019  ProjectRed-1.12.2-4.9.4.120-integration.jar
-rw-rw-r-- 1 brian brian   724477 Okt 22  2019  ProjectRed-1.12.2-4.9.4.120-lighting.jar
-rw-rw-r-- 1 brian brian  2596509 Okt 22  2019  ProjectRed-1.12.2-4.9.4.120-mechanical.jar
-rw-rw-r-- 1 brian brian   501169 Okt 22  2019  ProjectRed-1.12.2-4.9.4.120-world.jar
drwxrwxr-x 3 brian brian     4096 Okt 28  2019  railcraft/
-rw-rw-r-- 1 brian brian  5541089 Okt 22  2019  railcraft-12.0.0.jar
-rw-rw-r-- 1 brian brian    36278 Okt 27  2019  RedstoneFlux-1.12-2.1.0.6-universal.jar
-rw-rw-r-- 1 brian brian  1247278 Okt 22  2019  Reliquary-1.12.2-1.3.4.796.jar
-rw-rw-r-- 1 brian brian   671064 Okt 22  2019  SolarFluxReborn_1.12.2-4.35r.jar
-rw-rw-r-- 1 brian brian 11360786 Okt 22  2019  Thaumcraft-1.12.2-6.1.BETA26.jar
-rw-rw-r-- 1 brian brian    59213 Nov  3  2019  ThaumicJEI-1.12.2-1.6.0-27.jar
-rw-rw-r-- 1 brian brian  2312713 Okt 27  2019  ThermalFoundation-1.12.2-2.6.3.27-universal.jar
-rw-rw-r-- 1 brian brian   446678 Okt 22  2019  Translocators-1.12.2-2.5.2.81-universal.jar
-rw-rw-r-- 1 brian brian    94171 Okt 22  2019  Wawla-1.12.2-2.5.273.jar
-rw-rw-r-- 1 brian brian   175462 Okt 22  2019  Waystones_1.12.2-4.0.72.jar
-rw-rw-r-- 1 brian brian   364036 Okt 22  2019  WR-CBE-1.12.2-2.3.2.33-universal.jar

The server is running on forge-1.12.2-14.23.5.2847-universal.jar

If you would like I could provide you with a copy of the world.

it takes the filename from world/stats and world/playerdata. The files in playerdata should just be named .dat ( for example: 019b5483-787e-4386-9f1c-b2e3f86b7a3f.dat) and in stats .json ( for example 019b5483-787e-4386-9f1c-b2e3f86b7a3f.json). maybe a mod places a file there thats not for a user and thats why it crashes.

did you get it working @me5ng3? if yes I can you tell me what the issue was?

br337 commented

did you get it working @me5ng3? if yes I can you tell me what the issue was?

I will try to get it working this weekend and will get back to you with an update.