Publication
Partagez vos connaissances.

Debugging & Local Tracing Tools for Sui: A Developer's Toolkit
Are you tired of dealing with non-obvious reverts and cryptic Move panic messages? 😩 Do you want to learn how to debug Move code and transaction behavior quickly? 🔍 Look no further! In this article, we'll provide step-by-step debug strategies and tools to diagnose Move code and runtime execution problems.
Reproduce Locally 📍
- Start a local devnet and use deterministic test accounts.
- Use
sui move test
with verbose flags to see failing test details.
Use Move Abort Codes and Custom Error Messages 📝
- Add
abort
with meaningful error codes or useassert
with message macros. - Map error codes to descriptions in docs for frontends to show user-friendly messages.
Instrumentation 🔍
- Add event emissions in Move for critical state transitions.
- Listen for events using
provider.getEvents
in TypeScript for easy tracing.
Transaction Inspection 🔎
- Read transaction effects (gas used, mutated objects) after submission.
- Compare expected mutated object versions with actual ones to find which operation failed.
Advanced Tracing 🔝
- Use commit-level logs or a debugger that steps into Move execution (if supported).
- Automate capture of full transaction payload + effects for failing CI tests.
Debug Like a Pro 💡
By following these step-by-step debug strategies and using the right tools, you'll be able to:
- Identify and fix issues quickly
- Improve your Move code and transaction behavior
- Provide better user experiences with user-friendly error messages
Happy debugging!
- SDKs and Developer Tools
Sui is a Layer 1 protocol blockchain designed as the first internet-scale programmable blockchain platform.
Gagne ta part de 1000 Sui
Gagne des points de réputation et obtiens des récompenses pour avoir aidé la communauté Sui à se développer.

- Pourquoi BCS exige-t-il un ordre de champs exact pour la désérialisation alors que les structures Move ont des champs nommés ?65
- « Erreurs de vérification de sources multiples » dans les publications du module Sui Move - Résolution automatique des erreurs55
- Échec de la transaction Sui : objets réservés pour une autre transaction49
- Comment maximiser la détention de profits SUI : Sui Staking contre Liquid Staking313
- Erreur Sui Move - Impossible de traiter la transaction Aucune pièce de gaz valide n'a été trouvée pour la transaction315