To provide richer visibility and ensure consistent tracking across Canvas activity, we are updating the schema for the Data Access Platform (DAP) / CD2 canvas_logs namespace, specifically for the web_logs table on 7th Oct 2026.
This update introduces six new values to the web_application_context_type enumeration to reflect additional activity contexts produced by the Canvas web application.
What is Changing?
The web_logs table in the canvas_logs namespace tracks HTTP requests and web application server access across your Canvas instance. The web_application_context_type field categorizes the primary object or entity that scoped or serviced each web request.
We are expanding the ContextType enum to include the following six new values:
New Enum Value | Description |
|---|
EpubExport
| Requests associated with Canvas course ePub exports and offline course package generation. |
GroupAndMembershipImporter
| Requests handled during batch imports of groups and group memberships (e.g., CSV imports). |
Submission
| Requests scoped to individual assignment submissions and grading interactions. |
Quizzes::Quiz
| Requests scoped to classic quizzes and quiz management objects. |
Quizzes::QuizStatistics
| Requests relating to quiz reports, statistics calculations, and quiz analysis. |
__dap_unspecified__
| Fallback context type for requests where the web application context is not defined or unmapped. |
The schema version for the web_logs table will be bumped upon release.
Why This Change?
As Canvas continues to modernize its background processing and web endpoints, user and system actions in these areas generate web access logs with distinct context types. Previously, web requests associated with these areas did not have corresponding enum values in the DAP schema.
Adding these context types ensures:
- Accurate Data Ingestion: Downstream pipelines and data stores receive precise context categorization.
- Schema Integrity: Prevents schema validation issues or dropped log lines when Canvas logs web traffic matching these context types.
- Resilience: The introduction of
__dap_unspecified__ ensures that requests without an explicit context type can still be safely categorized and ingested without breaking strictly validated downstream schemas.
DAP CLI Compatibility: No Update Required
No DAP CLI change or upgrade is required for this update.
The DAP CLI dynamically fetches table schemas directly from the DAP Query API when running commands like initdb and syncdb. As soon as the updated schema is deployed to the service, the CLI will pick it up automatically.