kinduff / csgo_exporter

A Prometheus exporter for Counter-Strike: Global Offensive.
Apache License 2.0
19 stars 3 forks source link

Is this project still active? As i keep getting "An error has occurred during retrieving statistics <nil>" #59

Closed accedic closed 1 year ago

accedic commented 1 year ago

I was wondering if this repos was still active as it seems the last push was 2 years ago. i keep getting this error "An error has occurred during retrieving statistics " i filled out my steam username/login steamid and api key. I am using the docker run command to initiate the exporter. Thanks

kinduff commented 1 year ago

Will review and come back to you. The project is active.

accedic commented 1 year ago

Just for a little more insight,

time="2023-05-18T12:51:02Z" level=fatal msg="An error has occurred during retrieving statistics " its as if the response im getting from the api is null, unless im mistaking. Not sure what i could be doing wrong. I would paste the parameters im entering, but sharing my api key and account details on a public posts is definitly not a good idea lol. Thanks for your help on this

accedic commented 1 year ago

I actually got it working using the binaries for linux, i also played around with the parameters and seems its the get inventory call that is failing. My inventory used to be private, so i'm suspecting this might have to do with that. However, i changed the settings of my inventory to public, i was wondering how long does that take to replicate to the steam API? i would assume its instantaneous but i dont have enough knowlege of the steam api as this is the first time i am messing around with.

accedic commented 1 year ago

Ok i think i've might have figured it out actually See below request done to for the inventory(i've x'ed out my steamID) If i recall correctly, steam has limited the number of requests for inventory recently, due third party inventory markets doing to many calls, this was slowing down the server responses on their end and causing some issues on their side(yeah explanation is pretty vague, i know). I believe they are doing aggressive rate limiting and this would be why i am getting a null response due to the 429 response code....

wget https://steamcommunity.com/inventory/XXXXXXXXXXXXXXXXXXXX/730/2 --2023-05-20 03:03:13-- https://steamcommunity.com/inventory/XXXXXXXXXXXXXXXXXXXXX/730/2 Resolving steamcommunity.com (steamcommunity.com)... 104.93.175.222 Connecting to steamcommunity.com (steamcommunity.com)|104.93.175.222|:443... connected. HTTP request sent, awaiting response... 429 Too Many Requests 2023-05-20 03:03:14 ERROR 429: Too Many Requests

accedic commented 1 year ago

Seems this aggressive rate limiting causing the response 429 and content null is triggered by the absence of a cookie header containing sessionid, timezoneOffset, _ga, browserid, webTradeEligibility, steamCurrencyId, app_impressions, _gid, strInventoryLastContext, steamCountry, steamLoginSecure.

I have tested with my browser and when logged in i can almost make as get requests to the inventory URL as i want. And get a 200 response and the json content. The rate limiting was most probably done only on un authenticated users. If i knew how to code any go i would submit a fix, but i know nothing about go. I will although give it a try, i'm pretty sure you could writte a fix and release new version faster than i could writte the first line of this fix.

Please appologize for me spamming my own thread, i did not think i would identify whats going on. Let me know if you need anymore information in order to resolve this. This new rate limiting seems to have been applied at the last holloween update. Multiple threads are available on the steam forum.

thanks again @kinduff

phyzical commented 1 year ago

for future users simply just increase SCRAPE_INTERVAL the default is too aggressive it seems