Almost every DN module emits events on successful Tx execution. There are some useful cross module queries:
message.module='{moduleName}'- filter out module events;
-
A new Call submitted event
Type:
multisig.submit_callAttributes:
msg_type- multi signature message type [string];msg_route- multi signature message routing [string];call_id- created call ID [uint];unique_id- call unique ID [string];sender- call creator address [bech32 string];
-
Call removed from the queue (call was executed or last vote was revoked)
Type:
multisig.remove_callAttributes:
call_id- removed call ID [uint];
-
Call state updated
Type:
multisig.update_callAttributes:
call_id- removed call ID [uint];call_state- removed call ID [approved / rejected / failed / executed];
Approved - Call voting ended successfully, message handler would be executed;
Failed - Call is Approved, but message handler finished with an error;
Executed - Call is Approved and message handler finished without an error;
Rejected - Call voting stopped by blocks timeout;
-
Call confirmed (vote added)
Type:
multisig.confirm_voteAttributes:
call_id- call ID [uint];sender- vote sender address [Bech32 string];
-
Call vote revoked
Type:
multisig.revoke_voteAttributes:
call_id- call ID [uint];sender- revoked vote sender address [Bech32 string];
-
Validator added (also triggered on validator replacement)
Type:
poa.addAttributes:
address- sdk address [Bech32 string];eth_address- Ethereum address [string];
-
Validator removed (also triggered on validator replacement)
Type:
poa.removeAttributes:
address- sdk address [Bech32 string];eth_address- Ethereum address [string];
-
Currency created after gov proposal approval
Type:
ccstorage.createAttributes:
denom- Currency denomination symbol [string];decimals- Currency decimals count [uint];info_path- VM CurrencyInfo path [HEX string];
-
Currency issued after multi signature approval
Type:
currencies.issueAttributes:
issue_id- Issue unique ID [string];denom- Currency denomination symbol [string];amount- Issue amount [uint];sender- payee account [Bech32 string];
-
Currency withdraw action
Type:
currencies.withdrawAttributes:
withdraw_id- Withdraw ID [uint];denom- Currency denomination symbol [string];amount- Withdraw amount [uint];sender- spender account [Bech32 string];
-
Market created
Type:
markets.createAttributes:
market_id- Market ID [uint];base_denom- BaseAsset denomination symbol [string];quote_denom- QuoteAsset denomination symbol [string];
-
Order posted
Type:
orders.postAttributes:
owner- Order creator address [Bech32 string];market_id- Market ID [uint];order_id- Order ID [uint];direction- Order type [bid/ask];price- price [uint];quantity- quantity [uint];
-
Order canceled (manually revoked or by TTL)
Type:
orders.cancelAttributes:
owner- Order creator address [Bech32 string];market_id- Market ID [uint];order_id- Order ID [uint];direction- Order type [bid/ask];price- price [uint];quantity- quantity [uint];
-
Order fully filled and removed
Type:
orders.full_fillAttributes:
owner- Order creator address [Bech32 string];market_id- Market ID [uint];order_id- Order ID [uint];direction- Order type [bid/ask];price- price [uint];quantity- quantity [uint];
-
Order partially filled, quantity updated
Type:
orders.partial_fillAttributes:
owner- Order creator address [Bech32 string];market_id- Market ID [uint];order_id- Order ID [uint];direction- Order type [bid/ask];price- price [uint];quantity- quantity [uint];
-
ClearanceState updated for Market (matching event)
Type:
orderbook.clearanceAttributes:
market_id- Market ID [uint];price- clearance price [uint];
-
New asset added
Type:
oracle.add_assetAttributes:
asset_code- new asset assetCode [string];
-
Price updated for assetCode
Type:
oracle.priceAttributes:
asset_code- assetCode [string];price- updated price [int];received_at- price received UNIX timestamp (in seconds) by oracles system [int];
Depending on VM execution status, module emits multiple events per Tx with variadic number of attributes.
-
VM execution status
keepreceived-
Contract status event ("keep" event)
Type:
vm.contract_statusAttributes:
status-keep[string const];
-
VM events (number of events depends on execution status)
Type:
vm.contract_eventsAttributes:
sender_address- VM event sender address [0x1for stdlib / Bech32 string for account resource];source- VM event source [scriptfor script source /{moduleAddress}::{moduleName}for module source];type- VM event type string representation in Move format [string];data- HEX string VM event data representation [string];
-
-
VM execution status
keepreceived (failed with an error)-
"keep" event
Type:
vm.contract_statusAttributes:
status-keep[string const];
-
"error" event
Type:
vm.contract_statusAttributes:
status-error[string const];major_status- error majorStatus [uint];sub_status- error subStatus [uint];message- error message [string];
-
-
VM execution status
discardreceivedType:
vm.contract_statusAttributes:
status-discard[string const];
-
VM execution status
discardreceived (failed with an error)Type:
vm.contract_statusAttributes:
status-discard[string const];major_status- error majorStatus [uint];sub_status- error subStatus [uint];message- error message [string];