Fil+ Notary App and GitHub Tooling Metrics Dashboard V0.1

Phil Pangestu
Filecoin Plus
Published in
3 min readMay 12, 2023

--

I am thrilled to introduce the inaugural version of the Fil+ tooling metrics dashboard. Over the upcoming weeks, we will be rolling out numerous updates to the Fil+ tooling, including notary due diligence flows and JSON file modifications. With such rapid development and major changes coming, monitoring our tooling performance is crucial. The Keyko team has been diligently working on this dashboard, aiming to measure user experience metrics. This dashboard is designed to:

  • Enhance transparency and maintain a standard for Fil+ tooling. In case of bugs or service interruptions, the drop in activity will be visible on this public dashboard.
  • Highlighting the throughput of the widely utilized Fil+ notary app.

Remember, this is just the first version of the dashboard. In this post, we’ll explore what the dashboard currently offers and what we aim to include soon.

Dashboard Features

In this initial release, we have concentrated on a concise set of metrics that we believe are most significant.

Number of bugs: This metric is captured by counting the open GitHub issues labeled as a bug on this repository. We are in the final stages of establishing a standard method for users to report bugs and for the governance team to manage them. Stay tuned for my upcoming article on this topic!

1/7/14-day metrics: Currently gathered using Sentry across all our tooling systems, we believe these metrics are essential for users to see:

  • Number of GitHub Logins: Counting the times users successfully initiate the GitHub login process and return to the dashboard.
  • Number of Ledger Logins: Keeping track of the times users successfully link their ledger to the dashboard. The next dashboard iteration will include a metric for ledger login failures, a common issue.
  • Number of GitHub Tokens Loaded: Counting the instances where users successfully login using a GitHub auth token, such as when a user logs in previously and re-logs into GitHub without needing to re-authenticate manually.
  • Number of Successful Proposals/Approvals: Number of times a user clicks the approve request button, and a transaction successfully posts on the chain.
  • Number of Failed Proposals/Approvals: Counting instances where a user clicks the approve request button, and a transaction does not post on the chain. This encompasses several possibilities, like if a user intentionally aborts a transaction or if a message fails to post on the chain due to the node. We plan to categorize each error separately in the future as many of them are external and not caused by the tooling itself.

Upcoming Functional Updates

  • Faster rendering: We recognize that the current website rendering time is rather slow. This is because our primary focus was ensuring proper data collection from both the notary app and GitHub tooling. We are now working on implementing data caching methods to speed up loading times.
  • Open endpoints: We aim to make this data available for everyone to enhance transparency and accountability. Other engineering teams, such as the DMOB team, will be able to pull data from this endpoint to get more information on missing “Time to Datacap” endpoints.

Future UI Enhancements

  • Dynamic visualization: We will soon transition to a more dynamic visualization library, similar to Starboard.
  • Tab division: As the dashboard expands with more metrics, we plan to organize it into different metric groups, each with its own tab.
  • Descriptive pages and tooltips: The dashboard will become more informative with tooltips explaining each

Closing Thoughts

Again, keep in mind that we are constantly iterating on this dashboard. If you’ve got ideas for changes, or there’s a particular metric you want to see, don’t hesitate to let us know. Drop your thoughts in the comments below, or ping me on the Filecoin Foundation Slack @Philippe-Pangestu. We’re all ears for your suggestions and can’t wait to make this dashboard even better for you!

--

--