docs/main/administration-guide/comply/compliance-export.mdx
import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';
<PlanAvailability slug="ent-plus" />Mattermost Enterprise customers can archive history or transfer message data to third-party systems for auditing and compliance purposes with compliance exports. Supported integrations include Smarsh (Actiance) Vantage, Global Relay, and Proofpoint.
From Mattermost v10.5, compliance exports include performance improvements for large daily data sets with changes affecting output formats, system performance, and logic. Compliance exports provide compliance teams complete information to reconstruct the state of a channel, and to determine who had visibility on an initial message, or when the message was edited or deleted. Compliance teams can track a message by its MessageId as it is edited or deleted, and across batches and exports periods.
Compliance exports are produced from the System Console, and contain all messages including:
Exports include information on channel member history at the time the message was posted.
Use the following guides to configure exports for CSV, Smarsh / Actiance XML, Global Relay EML, or Proofpoint.
<Note>exports subdirectory of the configured filestore in the chosen format. This will either be in the Local Storage directory or the Mattermost S3 bucket if S3 storage is configured.export command line tool.HH:MM. Choose a time when fewer people are using your system.You can review export job status in the System Console.
When the daily compliance export job is finished, a parent directory is created named based on when the export was started and the startTimestamp and endTimestamp of the export, e.g, administration-guide/comply/compliance-export-2024-08-13-05h08m-1723105062492-1723109100075. That parent directory contains 1 zip file for each batch, named based on the batch number and the start and end timestamps of the messages in that batch, e.g, batch001-1723105062492-1723106622163.zip. Each zip file contains the same information available in previous Mattermost server releases.
Working from the same example above, the directory would look like this:
administration-guide/comply/compliance-export-2024-08-13-05h08m-1723105062492-1723109100075
├── batch001-1723105062492-1723106622163.zip
├── batch002-1723106622163-1723108196005.zip
└── batch003-1723108196005-1723109100075.zip
And each batch would look like this:
batch001-1723105062492-1723106622163.zip
├── files
├── metadata.json
└── actiance_export.xml
Post Creation Time is always the CreateAt for messages and attachments, or JoinTime and LeaveTime for participant join and leave events, respectively.
updateAt time.EditedNewMsgId, which is the Id of the message which holds the post-edited message contents.The daily compliance export job creates a .zip file with a unique job identifier of all messages posted in the last 24 hours. You can unzip the file to easily transform the default .csv format into a desired format for your third-party archive system.
For a sample CSV output, download a CSV export file here.
</TabItem> </Tabs>Actiance XML is the supported format for the 'Smarsh Vantage product [https://central.smarsh.com/s/product/vantage\](https://central.smarsh.com/s/product/vantage\)\`\_.
In Actiance XML exports, channel type is prepended to the channel names.
</Note> <Tabs> <TabItem value="from-mattermost-v10-5" label="From Mattermost v10.5">You can review export job status in the System Console. Once you've selected Actiance XML as your file format, you can set up an integration with Actiance Vantage archive system.
When the daily compliance export job is finished, a parent directory is created named based on when the export was started and the startTimestamp and endTimestamp of the export, e.g, administration-guide/comply/compliance-export-2024-08-13-05h08m-1723105062492-1723109100075. That parent directory contains 1 zip file for each batch, named based on the batch number and the start and end timestamps of the messages in that batch, e.g, batch001-1723105062492-1723106622163.zip. Each zip file contains the same information available in previous Mattermost server releases.
Working from the same example above, the directory would look like this:
administration-guide/comply/compliance-export-2024-08-13-05h08m-1723105062492-1723109100075
├── batch001-1723105062492-1723106622163.zip
├── batch002-1723106622163-1723108196005.zip
└── batch003-1723108196005-1723109100075.zip
And each batch would look like this:
batch001-1723105062492-1723106622163.zip
├── 20240808
└── actiance_export.xml
If an XML field is empty, it won't be exported. This is a change from previous Mattermost releases, where empty XML nodes were exported.
MessageId is the unique messageId.DateTimeUTC is always the post's CreateAt time.UpdatedDateTimeUTC indicates that the message has been updated, and this is the updateAt time.UpdatedType helps differentiate what kind of update it was, including:
EditedNewMsg indicates that this message has been edited, and this is the new message (post-edit) content.EditedOriginalMsg indicates that this message has been edited, and this the original message (pre-edit) content. This message will have another field EditedNewMsgId, which is the Id of the message which holds the post-edited message contents.UpdatedNoMsgChange indicates that this message's content hasn't changed, but the post was updated for some reason, such as a reaction, replied-to, a reply was edited, or a reply was deleted.Deleted indicates that the message was deleted.FileDeleted indicates that the message is recording that a file was deleted.The daily compliance export job creates a .zip file with a unique job identifier of all messages posted in the last 24 hours. Once you've selected Actiance XML as your file format, you can set up an integration with Actiance Vantage archive system. For a sample Actiance output, download an Actiance XML export file here.
For more information on Global Relay archive system, visit their website.
Messages larger than 250 MB will have their attachments removed because they are too large to send to Global Relay. An error is added to the server logs with id global_relay_attachments_removed. It includes the post ID the attachments were removed from, as well as the attachment IDs. A ticket is queued to better handle large messages.
Once you've selected Global Relay EML as your file format, you can set up an integration with Global Relay archive system. For more information, see Global Relay Archive.
See the Global Relay section for details on updated Global Relay export fields. Now you can set up an integration with the Proofpoint archive system. For more information, visit the Proofpoint Archive webiste.
No. Compliance exports only include channel messages, direct messages, file uploads, and posts from plugins/bots/webhooks. Data from Mattermost Playbooks (including run activities, status updates, and retrospectives) and Mattermost Boards (including cards, comments, and board activities) are not included in the compliance export functionality. Organizations requiring compliance archiving of Playbooks and Boards data should consider separate data retention strategies for these features.
Run the export command line tool. You can specify an exportFrom option to export data from a specified timestamp. All posts that were made after this timestamp will be exported.
From Mattermost Server v10.11, system administrators can download compliance export jobs using the mmctl compliance_export download command. This provides a command-line interface for retrieving completed compliance export jobs by job ID.
If the compliance export job is run automatically, manually via the System Console, or manually via the CLI (without the --exportFrom option), it exports all posts that were made since the last post that the previous execution of the job exported. If this is the first time that the job has ever run, all posts that were made since the feature was enabled will be exported.
If the --exportFrom option is specified with the CLI command, all posts that have been made since the supplied timestamp will be exported.
When run manually via the System Console, .csv and Actiance XML files are written to the exports subdirectory of the configured Local Storage Directory. Files will be written to a folder with names based on an epoch time range. Global Relay EML export format files will be mailed to the configured email address when run manually.
No. There's no limit to the number of rows within Compliance Monitoring CSV files.
Mattermost provides the status of each compliance export job in System Console > Compliance > Compliance Export. Here, you can see if the job succeeded or failed, including the number of messages and files exported.
In addition, any failures are returned in the server logs for self-hosted deployments. The error log begins with the string Failed job and includes a job_id key/value pair. Compliance export job failures are identified with worker name MessageExportWorker. You can optionally create a script that programmatically queries for such failures and notifies the appropriate system.
This compliance export feature replaces legacy Compliance Reporting Oversight functionality. We recommend Enterprise customers migrate to the new system. For a sample CSV output of the new compliance export system, download a CSV export file here.
</Note>