Skip to content
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

[Deliverable] Metric: Count store messages #167

Closed
1 task done
chair28980 opened this issue May 13, 2024 · 12 comments
Closed
1 task done

[Deliverable] Metric: Count store messages #167

chair28980 opened this issue May 13, 2024 · 12 comments
Assignees
Labels
Deliverable Tracks a Deliverable

Comments

@chair28980
Copy link
Contributor

chair28980 commented May 13, 2024

Project: https://github.com/orgs/waku-org/projects/22/views/1

Description

Message-finder is used to compare the number of Status messages across Status nodes to understand the potential discrepancies and odd behaviour of messages being inserted in the past in a given channel.

This deliverable captures the message count on all Waku fleets to use as a metrics of the efficacy of store sync.

Tool is being created in https://github.com/waku-org/storenode-messages repo, work on other clients is not expected.

Tasks

Output

https://grafana.infra.status.im/d/hmX6pJ_Iz/storenode-message-counter?orgId=1&from=now-7d&to=now

@chair28980 chair28980 added the Deliverable Tracks a Deliverable label May 13, 2024
@fryorcraken fryorcraken added this to Waku May 13, 2024
@chair28980 chair28980 added this to the Metric: Count store messages milestone May 14, 2024
@chair28980
Copy link
Contributor Author

chair28980 commented May 16, 2024

Richard is creating a separate tool for this task, work on other clients not expected.

waku-org/storenode-messages-counter#8

@chair28980 chair28980 changed the title [Milestone] Metric: Count store messages [Deliverable] Metric: Count store messages May 27, 2024
@chair28980 chair28980 modified the milestones: Metric: Count store messages, Store Service Upgrade Jun 5, 2024
@chair28980
Copy link
Contributor Author

Closing as completed waku-org/storenode-messages-counter#8 (comment)

@github-project-automation github-project-automation bot moved this to Done in Waku Jun 26, 2024
@fryorcraken fryorcraken reopened this Jul 22, 2024
@fryorcraken
Copy link
Contributor

Re-opened because we need some graph or dashboard to actually see the missing message count, so that we can check that with store sync there are indeed no recent message missing.

There was also performance issue due to the traffic spike.

@richard-ramos Are performance improvement done? When do you think we can have the graphs?

@richard-ramos
Copy link
Member

@richard-ramos
Copy link
Member

I did add some degree of concurrency to try improve the performance. So far the delay to process the messages seem to hover around ~8m which seems fine

@fryorcraken
Copy link
Contributor

Latest update on this. The current diagram are good to highlight issues with the store node. However, it does not enable us to confirm whether store sync are able to fix missing messages. The proposal is to add a secondary check that reviews if known missing messages are still missing after some times. Here is the description of the graphs:

3 graphs per period:

  • past hour
  • past day
  • past week

for each

  • x axis is time of recheck
  • number of still missing messages within the period of the graph (per store node)

So if you look at past hour, it shows at time t (time of recheck), what messages where still missing within t - 1h to ~t or most likelyt - 2 min

So ideally, from the moment store sync is enabled, past day and past week always flat line.

And past hour can be used to debug store sync and improve it to flat line it.

And this way, we can also affirm that the store are sync'd over given period of time.

@SionoiS @Ivansete-status if you can confirm that such change would help confirm that store sync is able to recover store node message discrepancies that would be great.

Also please clarify:

  • how often does/will store sync run?
  • what period of time does store sync covers (how much in the past it tries to sync messages)

on Status fleets.

@fryorcraken
Copy link
Contributor

Also, @richard-ramos, can we also deploy it for TWN? Would be good to have if projects complain of message loss. not urgent.

@SionoiS
Copy link

SionoiS commented Jul 26, 2024

  • how often does/will store sync run?

Every hours.

  • what period of time does store sync covers (how much in the past it tries to sync messages)

Last hour minus 20s.

@Ivansete-status
Copy link

@fryorcraken

@SionoiS @Ivansete-status if you can confirm that such change would help confirm that store sync is able to recover store node message discrepancies that would be great.

I think this is a great idea but we can make it simpler, i.e., make the storenodes-messages tool to keep track of the number of seen messages on each storenode, and then just represent the relative difference amongst them. wdyt @richard-ramos ?

@richard-ramos
Copy link
Member

Hm. I did add the message re-verification requested by Franck earlier and did not add much complexity to the code. I think it should be fine since it is extra information that might be useful. If later we see that it is not really needed, we can drop the changes (I'm all in for removing code! :) )

@fryorcraken
Copy link
Contributor

All features done and added to dashboard: https://grafana.infra.status.im/d/hmX6pJ_Iz/storenode-message-counter?orgId=1&from=now-7d&to=now

Dogfooding started. Will review in a week and close deliverable.

@chair28980 chair28980 moved this from Done to In Progress in Waku Aug 9, 2024
@fryorcraken
Copy link
Contributor

Done!

@github-project-automation github-project-automation bot moved this from In Progress to Done in Waku Aug 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Deliverable Tracks a Deliverable
Projects
Status: Done
Development

No branches or pull requests

5 participants