Each time an Appwrite Function runs, an execution is created. Each execution has a unique ID. If you enable execution logs in your function, you can find function executions logged in the Executions tab.

Execution table

In your function's Executions tab, you will see a table of your recent executions. Here's the information shown on this table.

EXECUTION IDUnique identifier for each execution
STATUSThe current status of the execution
CREATEDTimestamp of when the execution was created
TRIGGERThe platform event that triggered the execution
METHODThe HTTP method used to create the execution
PATHThe URL path the function execution was called with
DURATIONThe time taken for the execution

Execution status

Each execution can have one of the follow status.

processingThe function execution has begun and has not finished.
completedThe function executed successfully.
failedThe function execution was not successful.

Execution details

When you click on an execution, you will be taken to an execution detail screen.

Execution details screen

Execution details screen

You can find both request and response details. Request and response body are not logged to protect user privacy. This ensures that developers do not see user data by default and no sensitive data is retained.

If you need to log debug data or audit logs, you can use function logging features to explicitly log the information you need.

Log retention

Logs are not retained forever in order to be compliant with GDPR and other data privacy standards. Free plan organizations will retain logs for 24 hours, Pro plan organizations will retain logs for 7 days.

If you need longer log retention, you can log to an Appwrite collection. Remember to configure proper permissions and implement Appwrite Functions or other scheduled tasks to expire and clean up logs.