I am not a developer, but as a sysadmin I know hundrets of way smaller applications which provide metrics of internal data (think of prometheus), either to be scraped or being sent via UDP to another local service receiving them (f.e. graphite/influx).
I can't really see problems in making this or performance issues here (the game already logs to file so much data), as this is mostly cpu-related and can be outsourced into a separate thread within the application or even a sidecar process. I also can't really see pitfalls for bugs as it's just like you would implement debug output. You decide what to send.
You just have to watch out that you don't spit out credentials or other sensitive data. But engine shouldn't carry that anyways.
There are so many open source applications like EDDiscovery, EDEngineer, ED Marketplace Connector etc which all scrape ingame information which maybe could benefit from a metrics endpoint. But unfortunately I don't know how they do their magic.
I can't really see problems in making this or performance issues here (the game already logs to file so much data), as this is mostly cpu-related and can be outsourced into a separate thread within the application or even a sidecar process. I also can't really see pitfalls for bugs as it's just like you would implement debug output. You decide what to send.
You just have to watch out that you don't spit out credentials or other sensitive data. But engine shouldn't carry that anyways.
There are so many open source applications like EDDiscovery, EDEngineer, ED Marketplace Connector etc which all scrape ingame information which maybe could benefit from a metrics endpoint. But unfortunately I don't know how they do their magic.