CorralPeltzer / newTrackon

newTrackon, a public open BitTorrent trackers monitoring tool
https://newtrackon.com
MIT License
599 stars 58 forks source link

Reset uptime values? #5

Closed MikeLund closed 6 years ago

MikeLund commented 7 years ago

How long does the "uptime" record of a tracker last for? It seems like it's indefinite? IMO it should expire uptime records that are older than one or two months.

Yes, it's good to know how stable a tracker has been over an extended period, but it is not a good metric. Let's compare two theoretical trackers:

Tracker 1: has 100% uptime but not many torrents on it because it is newer Tracker 2: has <95% uptime due to some hardware issues, but has been around for longer and has millions of torrents tracked

In the current "good list", tracker 2 won't be included even though it's a much more beneficial tracker to add to a torrent client.

CorralPeltzer commented 7 years ago

As you can see in the asterisk footnote at the end of the main section, the uptime is just calculated based on the last 1000 checks, which means that is between 10.5 and 104.1 days looking at the shortest and longest update intervals currently on the list. It is a really simple system and I want to change it to a constant time one, like 1 or 2 months. It is also quite vulnerable because it allows a tracker to climb from 0 to 100% faster just setting a shorter interval time. Feel free to implement it, I won't be able to do it until summer.

About the number of torrents tracked by a tracker, AFAIK there is no way to measure that programmatically, therefore I can't add it as a variable to measure the quality of a tracker. Currently, trackers are ordered by uptime and, in the case of same uptime, by date added, from oldest to newest. However, I still think uptime is a good measurement for a tracker quality. A stable tracker with few peers is better than a big and unstable one that doesn't return requests half of the time, making its tracked swarm less reliable and outdated. I think a 95% uptime is not too much to ask for a good tracker, and less than that usually means overload or structural issues. I am open, however, to lower a bit that number.

Another change I've thought is making announce requests for known popular torrent hashes instead of random hashes, measuring that way the popularity of a tracker, but that would raise a new set of problems, like the case of some hashes being blacklisted by some big trackers.

MikeLund commented 7 years ago

Hi again,

About the number of torrents tracked by a tracker, AFAIK there is no way to measure that programmatically

Most tracker software has it, depends if tracker enables it. Just changing /announce to /stats is the typical method. Some examples:

opentracker

at http://tracker.vanitycore.co:6969/stats

581667
383776
opentracker serving 238834 torrents
opentracker

chihaya

see http://t.nyaatracker.com/stats

xbt tracker

see http://ipv4.tracker.harry.lu/stats (also rarbg)

...and probably some more opentracker softwares. There's no standard for it, so you most likely do not want to waste your time parsing these different trackers, but it is possible in any case :-)

In any case, it would be really useful if you were able to print the date of the last "downtime event" on the UI. Gives some more information :) Cheers!

CorralPeltzer commented 7 years ago

Wow, I knew some had statistics, but had no idea they were so generalized. Thanks a lot for the info! In the near future I want to have a page for every tracker showing some charts and stats, so this will probably be done in a semi-automated way.

About the new column of last downtime event, I'm implementing that soon.

MikeLund commented 6 years ago

Very cool, thanks!

(Now I just need to figure out why trackon is detecting some trackers as randomly down, when there's no issues with them, and other services such as Pingdom has perfect uptime with them for many months) :)