Remote logging with Godot and Itch?

TLDR: Is there a way to remotely get telemetry for an A/B test from a game loaded on itch.io? Alternatively, does itch.io have any way for me to download logs from games I’ve deployed?

I’ve got a project in the works that’s written using Godot- I’m not ready to deploy yet, but I figured I’d ask the question while it’s on my mind.

Basically, to learn the engine and build some game dev chops, I’m making a Duck Hunt clone. I’m not sure what the best leveling algorithm (controls speed and number of ducks on screen) would be, so once I get the game in a more presentable state, I want to set up a sneaky A/B test on a dev build and deploy it on itch.io for feedback. This will be a web browser based game.

I know that Godot can output to a file, that’s no issue- however, I don’t know if Itch has a way for me to download those files. I wasn’t able to find any documentation after some Google searches, nor have I found anything in Godot docs about remote logging.

I have a couple of ideas already, if Itch doesn’t have any such feature.

  1. At the end of each session, upload a file with the log lines to a cloud; an Amazon S3 bucket or a DigitalOcean Space, maybe? This runs the risk of logs being destroyed if the web browser is closed.
  2. Set up a system like Splunk or AWS CloudWatch/Amazon Kinesis and see if it has an API endpoint I can stream data to. This will likely cost me money.

Again, assuming Itch has no such feature to download log files, I’d be happy to hear other ideas. Thanks for your help!

As far as Godot goes it has an http request node which can be used for calling back out to APIs to send and receive data that can be used for this purpose.

Outside of that if you use godot mono you can leverage nuget packages that interfaces with an S3 bucket, DB, or other storage method or use another logging service like sentry.io (though that is for error logging and not A/B testing).

As for if itch.io offers any services for that, I do not think so but I could be wrong. That being said if you are looking for free MongoDB Atlas has a free plan for up to 512MBs of storage so you could write some code that logs the data directly to a MongoDB then read it out later using something like the ELK stack or any other number of tools to parse and visualize the data if you do not want to review it by hand. The only downside is the free tier is really small (~512MBs) so you may need to keep your logs small.
Pricing | MongoDB

Quick edit:
If itch.io does offer a service like that I would assume it is documented in their API docs so I would look there first.
itch.io API - itch.io

3 Likes

That’s a good point, I’ll see what endpoints are available to me for HTTPRequests- worst case, I’ll try Godot Mono and see what I can do.

Thank you!

1 Like