Skip to content

holly-cummins/quarkus-minecraft-observability-extension

Repository files navigation

Minecraft as an observability client: A Quarkus extension demo

workflow

a minecraft screen with quarkus logging in it

Quick start

Build the minecraft server container

cd modded-minecraft
podman build -t minecraft-server .

The container build can be a bit slow the first time, be warned. If you're in a hurry, you can turn off dev services and use ./gradlew runServer instead. If you'd like to test the built container, you can run podman run -p 25565:25565 -p 8081:8081 minecraft-server.

INFO: First time you start the Minecraft server you will have to accept the eula by changing eula=false to eula=true in the file modded-minecraft/run/eula.txt

Start the minecraft client

There are two ways to do this:

The best way to connect a client us to use the client in the Forge Minecraft library. This ensures compatibility with the server. To launch it, run

cd modded-minecraft
./gradlew runClient

Start a multiplayer game, and connect to localhost:25565.

Using the 'official' launcher and the Java edition of Minecraft

You can also use the normal Minecraft launcher, but only if the client and server versions exactly match. Using the official client will allow you may need to set online-mode to true on the server, and get rid of a warning.

If using the official client, which will be un-modded, you will need to configure the client to allow you to alt-tab away from the client without it pausing and bringing up a menu. Edit options.txt in your minecraft folder , and change pauseOnLostFocus to false.

Build the extension

cd extension
mvn install

Start the sample application

cd quarkus-todo-app
quarkus dev

(If you do mvn install, with podman it should be TESTCONTAINERS_RYUK_DISABLED="true" mvn install.)

a minecraft screen with a timestamped chicken

Interact with the web app

Arrange your windows so you can see both the minecraft client and the web application. Visit http://localhost:8080. While you're interacting with the web app, you should see things happen in the minecraft world. Visiting the page will cause a mob to spawn, and an exception (like a 404) will cause an explosion.

an animated gif showing web page hits triggering chickens

You can see a video of the interactions, or a longer video with voiceover.

a youtube title screen

A more complete demo script is also available.

About

Uses minecraft as a client for viewing observability metrics.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •