Budget VEMS.
Find a file
2023-10-20 22:19:53 +01:00
grafana Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
src Update user agent string 2023-10-20 22:18:09 +01:00
.envrc Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
.gitignore Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
Cargo.lock Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
Cargo.toml Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
flake.lock Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
flake.nix Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
LICENSE Initial commit of proof of concept. 2023-10-20 22:16:33 +01:00
README.md Auth note in README 2023-10-20 22:19:53 +01:00

VR Event Tracker

Adapter for VRChat API instance data and VRCDN API to Prometheus metrics.

Very budget version of VEMS, which can be viewed as a more complete solution. This is mostly for fun and learning. A dashboard is provided in grafana/dashboard.json.

Not a lot of metrics are collected at the moment. Just the ones I care about.

Configuration

Configuration is done with a config.toml file with the following format:

instances = [
  { name = "optional instance name"
  , url = "https://vrchat.com/home/launch?worldId=wrld_123&instanceId=123" 
  },
  { name = "another instance"
  , instance = "234"
  , world = "wrld_234" 
  }
]

vrcdn = "vrcdn_stream_name"

Instances can either be the URL or instance and world ID seperated out, the later taking priority over the former.

Runs on port 6534, on all interfaces. May be configurable in the future.

You will need to set the VRCHAT_AUTH_TOKEN environment variable to authenticate with VRChat's API. This isn't technically recommended and a more robust authentication system (see: correct) should be considered for serious use (see: VEMS).