Opened 7 years ago

Closed 5 years ago

#6283 closed enhancement (wontfix)

Add more parameters to search by version and other fields

Reported by: Aymeric Owned by:
Priority: Low Milestone:
Component: Metrics/Onionoo Version:
Severity: Keywords:
Cc: Actual Points:
Parent ID: Points:
Reviewer: Sponsor:

Description

Is it on purpose that onionoo returns all the information except onion and signing keys ?

Maybe the search could be extended to other fields, like the Tor version : xxxx?search=0.2.3

Probably it has alreday been thought and there is a goog reason for not doing it, but for example it could be extended to almost all the fields that you provide in the detailed output (whether explicitely ?search=country_name:germany, or implicitely) :
{"nickname":"gabelmoo",

"fingerprint":"F2044413DAC2E02E3D6BCF4735A19BCA1DE97281",
"or_addresses":212.112.245.170:443?,
"dir_address":"212.112.245.170:80",
"running":true,
"flags":["Authority","HSDir","Named","Running","Stable","V2Dir","Valid"],
"country":"de",
"latitude":49.447800,
"longitude":11.068298,
"country_name":"Germany",
"region_name":"Bayern",
"city_name":"N\u00FCrnberg",
"as_number":"AS24900",
"as_name":"IPX Server GmbH",
"consensus_weight":20,
"host_name":"tor-dirauth.sebastianhahn.net",
"last_restarted":"2012-04-17 17:18:12",
"advertised_bandwidth":20480,
"exit_policy":[
"reject *:*"
],
"contact":"4096R\/C5AA446D Sebastian Hahn <tor@…>",
"platform":"Tor 0.2.3.13-alpha-dev (git-937d7e82012f62b8) on Linux x86_64"

Child Tickets

Change History (7)

comment:1 in reply to:  description Changed 7 years ago by karsten

Priority: normalminor

Replying to Aymeric:

Is it on purpose that onionoo returns all the information except onion and signing keys ?

Onionoo aims to provide any information that applications like Atlas would want to provide to users. We left out cryptographic keys, because they're hardly useful for humans. Also, they eat up a lot of space. Is there a good reason to add cryptographic keys?

Maybe the search could be extended to other fields, like the Tor version : xxxx?search=0.2.3

That would rather be "xxxx?version=0.2.3", but yes, that would be possible. It's not implemented in Onionoo, because no application uses it, not because it wouldn't be useful. If Atlas or some other application would use it, we can add that parameter. (I'm trying not to add too many features because of the planned Python port of Onionoo, though.)

Probably it has alreday been thought and there is a goog reason for not doing it, but for example it could be extended to almost all the fields that you provide in the detailed output (whether explicitely ?search=country_name:germany, or implicitely) :
{"nickname":"gabelmoo",

"fingerprint":"F2044413DAC2E02E3D6BCF4735A19BCA1DE97281",
"or_addresses":212.112.245.170:443?,
"dir_address":"212.112.245.170:80",
"running":true,
"flags":["Authority","HSDir","Named","Running","Stable","V2Dir","Valid"],
"country":"de",
"latitude":49.447800,
"longitude":11.068298,
"country_name":"Germany",
"region_name":"Bayern",
"city_name":"N\u00FCrnberg",
"as_number":"AS24900",
"as_name":"IPX Server GmbH",
"consensus_weight":20,
"host_name":"tor-dirauth.sebastianhahn.net",
"last_restarted":"2012-04-17 17:18:12",
"advertised_bandwidth":20480,
"exit_policy":[
"reject *:*"
],
"contact":"4096R\/C5AA446D Sebastian Hahn <tor@…>",
"platform":"Tor 0.2.3.13-alpha-dev (git-937d7e82012f62b8) on Linux x86_64"

The same applies here as for the version above.

Leaving this ticket open, but changing priority to minor. If there are plans to use the new features in Atlas or another Onionoo client, I'll extend Onionoo. Does that make sense?

comment:2 Changed 7 years ago by karsten

Type: defectenhancement

comment:3 Changed 7 years ago by Aymeric

Onionoo aims to provide any information that applications like Atlas would want to provide to users. We left out cryptographic keys, because they're hardly useful for humans. Also, they eat up a lot of space. Is there a good reason to add cryptographic keys?

--> maybe not in the scope of Atlas's use, but for dev's use it can, trying for example http://<hostname>/tor/server/fp/<fingerprint> seems not to be working at all with a lot of relays (normal?)

That would rather be "xxxx?version=0.2.3"

--> Whatever syntax (like ?search=country_name:germany above), or something more transversal seeking into all the fields, anyway since you already provide all the output, one day or another it should not be difficult to add

You can close the ticket if you like.

comment:4 in reply to:  3 Changed 7 years ago by karsten

Summary: Enhancement suggestionsAdd more parameters to search by version and other fields

Replying to Aymeric:

Onionoo aims to provide any information that applications like Atlas would want to provide to users. We left out cryptographic keys, because they're hardly useful for humans. Also, they eat up a lot of space. Is there a good reason to add cryptographic keys?

--> maybe not in the scope of Atlas's use, but for dev's use it can, trying for example http://<hostname>/tor/server/fp/<fingerprint> seems not to be working at all with a lot of relays (normal?)

That URL should work for all relays with DirPort 80, which is only a subset of them. A better approach would be to run a local Tor client and grep the cached-descriptors[.new] file. But most Onionoo/Atlas users wouldn't be interested in cryptographic keys, so I think we shouldn't add them.

That would rather be "xxxx?version=0.2.3"

--> Whatever syntax (like ?search=country_name:germany above), or something more transversal seeking into all the fields, anyway since you already provide all the output, one day or another it should not be difficult to add

You can close the ticket if you like.

I think the ticket is useful. Giving it a more descriptive summary and leaving it open for later.

comment:5 Changed 7 years ago by Aymeric

That URL should work for all relays with DirPort 80,
--> Ah, yes, of course...

which is only a subset of them. A better approach would be to run a local Tor client and grep the cached-descriptors[.new] file. But most Onionoo/Atlas users wouldn't be interested in cryptographic keys, so I think we shouldn't add them.

--> Right now I am not very clear about how the cached-descriptor is updated by the relays and downloaded, and how you catch the updated info into Onionoo and at what frequency. I would like to use what I think is a faster method for my purpose (ie no grep of cached-descriptor), storing minimal information about relays (fingerprint-ports-bandwidth) and retrieving keys dynamically (so I can check at the same time that the relay is alive), that's why I thought to the above method but this does not work, I think it would be good to have this kind of way to retrieve information real time without the need of a cached-descriptor

comment:6 in reply to:  5 Changed 7 years ago by karsten

The following discussion is mostly unrelated to the ticket. Lacking a better communication channel, I'll keep it here. Please email tor-assistants@… for further discussion.

Replying to Aymeric:

--> Right now I am not very clear about how the cached-descriptor is updated by the relays and downloaded,

All tor processes keep a list of descriptors they learn and dump them to their cached-descriptors and cached-descriptors.new files.

and how you catch the updated info into Onionoo and at what frequency.

Onionoo rsync's descriptors from the metrics data processor once per hour.

I would like to use what I think is a faster method for my purpose (ie no grep of cached-descriptor), storing minimal information about relays (fingerprint-ports-bandwidth) and retrieving keys dynamically (so I can check at the same time that the relay is alive), that's why I thought to the above method but this does not work, I think it would be good to have this kind of way to retrieve information real time without the need of a cached-descriptor

I don't quite understand why grepping cached-descriptors[.new] is not fast enough or why storing these files is problematic. Also, there's no need to check whether a relay is alive, because that information is contained in cached-consensus or in the running field in Onionoo's output.

In short, I think I don't quite understand the specifics of the application here. If there's something that we can add to Onionoo to make that application easier to build, I'm happy to consider it. I want to understand the application first, though.

comment:7 Changed 5 years ago by karsten

Resolution: wontfix
Status: newclosed

I'm not planning to add any more parameters to Onionoo unless there's a good reason for doing so. Closing.

Note: See TracTickets for help on using tickets.