Heads up! - Restriction for some API functions - if you pull data, read this.

  • Simomax
  • Simomax's Avatar Topic Author
  • Offline
  • Moderator
  • Moderator
  • Nuts about radioactive everything!
More
5 hours 53 minutes ago - 4 hours 33 minutes ago #7582 by Simomax
Hello everyone,

It became apparent today that some users have automated the use of the CSV/graph drawing and other API functions, which has been having an impact on server performance. It was this thread that prompted me to have a bit of a dig through the radmon logs and found a lot of requests from external devices that have been using CPU intensive API functions. I have now restricted these functions for the time being until Dan and I find a suitable solution.

For now the following functions have been restricted:
  • forcegraphrefresh
  • drawall
  • graphtoday
  • graphweek
  • graphmonth
  • graphquarter
  • drawgraph24hr
  • drawsmallgraph
I am also looking at other API functions that are currently being abused but are having a lesser impact than the graph generation.

Feel free to discuss/throw in any ideas.

Cheers
Last edit: 4 hours 33 minutes ago by Simomax.

Please Log in or Create an account to join the conversation.

  • Simomax
  • Simomax's Avatar Topic Author
  • Offline
  • Moderator
  • Moderator
  • Nuts about radioactive everything!
More
4 hours 20 minutes ago - 4 hours 20 minutes ago #7584 by Simomax
I have made another two changes to the API. The functions lastreading and lastreadingusv were being heavily spammed, over and over. It is now a requirement to use the station's data sending password with the function. Yes, this does mean that only the station owner can request this data now, unless they share their password. It's not ideal, but the best I can come up with for now.

Anyone that is pulling their station CPM or uSv/h should update their code to include their station's data sending password.

Function: lastreading
*Updated 24/05/2026 - added in password requirement
Parameters: user, password
Description: Displays the last reading of a station in CPM.
Example: https://radmon.org/radmon.php?function=lastreading&user=Simomax&password=datasendingpassword
Returns: '18 CPM on 2022-12-03 17:49:31UTC at Blackpool, Lancashire, United Kingdom'

Function: lastreadingusv
*Updated 24/05/2026 - added in password requirement
Parameters: user, password
Description: Displays the last reading of a station in uSv/hr.
Example: https://radmon.org/radmon.php?function=lastreadingusv&user=Simomax&password=datasendingpassword
Returns: '0.225 uSv/hr on 2022-12-03 17:45:31UTC at Blackpool, Lancashire, United Kingdom'

This is just an example of what I found whilst digging, which I consider completely unacceptable:
77.87.#.# - - [24/May/2026:14:48:59 +0100] "GET /radmon.php?function=showuserlist HTTP/1.1" 200 13832 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:48:59 +0100] "GET /radmon.php?function=lastreadingusv&user=Michelbach HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Bihor HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Bertiolo HTTP/1.1" 200 3971 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=NW8R HTTP/1.1" 200 233 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Hampshire HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Hersfeld HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Rosenhof HTTP/1.1" 200 3971 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=sbodnar HTTP/1.1" 200 233 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Kaliningradskaya HTTP/1.1" 200 3971 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Gene99 HTTP/1.1" 200 224 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Radium88b HTTP/1.1" 200 239 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Matthias HTTP/1.1" 200 4096 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=VAR HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Alpes HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=fell HTTP/1.1" 200 315 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=tag2015 HTTP/1.1" 200 240 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Brunovce HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=sp3tlu HTTP/1.1" 200 226 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Westergellersen HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=republic HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=bRAD HTTP/1.1" 200 312 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=bengos HTTP/1.1" 200 317 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Czech HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Wexican HTTP/1.1" 200 320 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Newcastle HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=radspod_one HTTP/1.1" 200 310 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=8mi HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Finning HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Provincie HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=lt904 HTTP/1.1" 200 236 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Corbetta HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Suldrup HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=appu HTTP/1.1" 200 321 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=Bad HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=saimre HTTP/1.1" 200 234 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:00 +0100] "GET /radmon.php?function=lastreadingusv&user=southofhobart1 HTTP/1.1" 200 238 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Don HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Zaltbommel HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=fredriknb HTTP/1.1" 200 310 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Sladkovicovo HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=5.6 HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Ebikon HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=22.5 HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=merat HTTP/1.1" 200 236 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Zhiniukas HTTP/1.1" 200 240 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Vladimirovo HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=19.5 HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Orange HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=Italia HTTP/1.1" 200 195 "-" "MonsterNode/2026.64"
77.87.#.# - - [24/May/2026:14:49:01 +0100] "GET /radmon.php?function=lastreadingusv&user=MiH HTTP/1.1" 200 236 "-" "MonsterNode/2026.64"
Last edit: 4 hours 20 minutes ago by Simomax.
The following user(s) said Thank You: nu3e

Please Log in or Create an account to join the conversation.

Moderators: Gamma-Man
Time to create page: 0.134 seconds
Powered by Kunena Forum
Everything's free. Please support us by considering a donation. Log in first!
Solar powered Raspberry Pi 4 server stats: CPU 63% Memory 15% Swap 15% CPU temp=70.6'C Uptime 22 Days