-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Discovery background processing feedback #162
Comments
I feel like this should be an endless stream command much like the audit domain. Where it in real time outputs steps the discovery tasks are taking. It should be pretty useful for debug too. I'm also thinking the manual discovery command will do the same but only output the events relevant to it. |
I think this is more of a generic feedback for discovery issue. To fully address it we'd need a command that returns the events of all discovery happening. But also
|
I originally thought that |
For the most case yeah, |
ah alright |
Along with this, we also need to list out queued discovery tasks. So I suppose it will list queued, then move on to emitting events when they are processed? Not sure, needs more spec. |
The |
Can you give examples of this? |
Human readable
Formatted as JSON {"event":"queued","vertex":"identity-[\"test-provider\",\"abc\"]"}
{"event":"queued","vertex":"node-vm6p5coet30377qql6vpm0oc6l9i5v4q6bn3e80digsv3ii4s9mm0"}
{"event":"processed","vertex":"identity-[\"test-provider\",\"abc\"]"}
{"event":"queued","vertex":"node-v4kjv3139hij4kv609e1dc53ruujhhlhmbuirh8uu8vh06j6kcbi0"}
{"event":"processed","vertex":"node-vm6p5coet30377qql6vpm0oc6l9i5v4q6bn3e80digsv3ii4s9mm0"}
{"event":"processed","vertex":"node-v4kjv3139hij4kv609e1dc53ruujhhlhmbuirh8uu8vh06j6kcbi0"} So the format of |
The encoded version looks fine to me. Why is it a problem? I don't really want to introduce custom delimitation. It should be easily machine parseable. |
I'm just thinking if we had to provide an |
It is fine because CLI commands use the This is the case with |
It looks like what you're describing is logging output/auditing output. In that case, it may continue to work… since its more diagnostic. But we reserve the right to change it the more we test it. |
So if it is now:
|
Actually since |
How about |
Link up the new issue for audit commands then here too @brian.botha. Especially |
Some minor details that need to be addressed
|
The title of this issue isn't accurate, since there is not |
An additional Issue and PR needs to be made for the audit domain. |
Yes you would want to filter out all subpaths of |
identities status
Command
I accidentally linked to the wrong linear issue when creating a new PR. As a result this got automatically re-opened. Closing it now. |
Specification
There should be status indicators for
TaskManager
tasks related to theDiscovery
domain.This command should provide feedback on the progress of discovery tasks of gestalts, and what gestalts have been recently discovered.
Ideally there should also be a way to cancel some of these tasks.
Discovery events
Discovery is already evented since it's
async-init
decorated. But we need to updated to have it's usual domain specific events along with discovery related events. We need an event for the following. More events may be added if any seem relevant.~
audit discovery
command~NOTE: this section is being split out to a new issue/PR that addresses the
audit
domain generally.We need to add the audit domain and the
audit discovery
command. It will function similar to connection auditing where we provide an endless stream of the above events.Part of the seeking will include a start point and an end point. Both of these are optional and can be set in the past or the future. When outputting events, it will stream the history from the start timestamp to the end timestamp. If the endpoint is in the past then the command will yield the history till that point and then end. If the start point or end point is into the future then the command will wait until the end point or cancellation to end. Future events will be yielded as they happen.
We want to add some degree of filtering to the events that are yielded. We could allow filtering for a specific or collection of nodes/identities. But also possibly filter on a vertex's parent or gestalt. If filtering is added then we'd need to work out how to specify filters as CLI options and how they interact.`
identities discover
commandThis command needs to be modified to provide feedback. Normally this command is non-blocking where it just adds a vertex to the queue and returns. But we need to add a
--blocking
flag or some flag that indicates feedback. When enabled this command will output events related to the vertex it queued and it's children vertices. Then command will end when all child vertices are processed. It could also be cancelled the normal way by aborting the command.When events are printed out, they should be consistent between the two commands.
Additional context
MatrixAI/Polykey#691
Tasks
audit discovery
command.(Name TBD)~ - Being addressed in a new PR for theaudit
domainidentities discover
command. Command will default to non-blocking with no feedback unless flagged for blocking.The text was updated successfully, but these errors were encountered: