Cleaning up async action logs¶
Table of contents
Introduction¶
Hasura stores action logs of async actions in a table in the metadata schema. As the table gets larger, you may want to prune it.
You can use any of the following options to prune your logs depending on your need.
Warning
- Deleting logs is irreversible, so be careful with these actions.
- Deleting logs while subscriptions for the response might still be open may result into the loss of data and
null
values been returned.
The table involved¶
There is a specific table for action logs that is managed by Hasura:
hdb_catalog.hdb_action_log
: This table stores all captured action logs.
Option 1: Delete log of a particular action invocation¶
DELETE FROM hdb_catalog.hdb_action_log WHERE id = '<async-action-id>';
Option 2: Delete all logs of a specific action¶
DELETE FROM hdb_catalog.hdb_action_log WHERE action_name = '<action-name>';
Option 3: Delete all logs older than a time period¶
DELETE FROM hdb_catalog.hdb_action_log WHERE created_at < NOW() - INTERVAL '3 months';
Option 4: Delete all logs¶
DELETE FROM hdb_catalog.hdb_action_log;