Jatheon Support Center

Your go-to place for product documentation, guides, and troubleshooting tips.

Microsoft Exchange (EWS)

Steven Tobolar
Steven Tobolar
  • Updated

Microsoft Outlook MSG Migration to Jatheon Cloud

This guide explains how to migrate Outlook .MSG files to Jatheon Cloud. It covers prerequisites, source discovery, manifest and checksum creation, transfer to a staging location, ingestion options (direct MSG or conversion path), and verification steps to ensure full data integrity and compliance.

Prerequisites

  • Access to the file shares or storage where .MSG files are located (on-prem or cloud).
  • Permissions to read all directories and export a complete file list (including hidden/system folders if used).
  • Installed PowerShell on the export host (Windows recommended for path compatibility).
  • Optional: Outlook or an approved MSG parser if you plan to read internal MSG headers during discovery.
  • Access to your Jatheon Cloud tenant for ingestion and post-import verification.

Overview

MSG is a Microsoft Outlook/Exchange message format (compound storage) containing the message body, MAPI properties (e.g., PR_SUBJECT, PR_SENT_REPRESENTING_EMAIL_ADDRESS, PR_CLIENT_SUBMIT_TIME), attachments, and sometimes embedded messages. For compliant migration, collect MSG files with their original paths, generate a manifest (name, size, hash, path), and preserve metadata throughout transfer and ingestion. Jatheon Cloud can ingest MSG directly or via a conversion path (e.g., to EML) depending on tenant setup. Check with Jatheon Support for the configured option for your environment.

Supported Source Scenarios

  • Exported user/journal archives stored as .MSG in file shares or NAS/SAN.
  • Legacy exports from archiving platforms producing per-item .MSG files.
  • PST to MSG extractions (folder-per-custodian trees).

Technical Notes

  • Preserve paths and filenames — treat the folder tree as part of chain-of-custody.
  • Filename normalization — avoid illegal characters, control path length (< 240) for compatibility.
  • Hashes — compute SHA-256 for each MSG to support deduplication and integrity checks.
  • Deduplication key — recommended: SHA-256 plus InternetMessageId (if extracted) and size.
  • Body formats — MSG may include HTML/RTF; ensure converters (if used) preserve formatting and attachments.
  • Embedded items — MSG can contain .msg attachments; ensure your workflow captures these.

Tip: Run a pilot on a small sample first (e.g., 2–3 custodians or 5–10k items) to validate item counts, attachment fidelity, and search parity before bulk ingestion.

Migration Scope

  1. Discovery — Enumerate all MSG files, record counts per custodian/folder, and total size.
  2. Manifest & Hashing — Create a CSV manifest with path, size, dates, and SHA-256 for each file.
  3. Transfer — Copy data to the agreed staging location (secure share or S3 bucket).
  4. Ingestion — Direct MSG ingestion or conversion-to-EML path as configured for your tenant.
  5. Validation — Compare manifest vs. ingested counts; spot-check headers, attachments, and dates.
  6. Cutover — Enable search and retention policies; confirm eDiscovery parity and sign-off.

Create a Manifest with SHA-256

The following PowerShell example recursively lists .msg files, computes SHA-256, and writes a CSV manifest.

$Root = "D:\Exports\MSG" $Out = "D:\Exports\manifests\msg_manifest.csv" $files = Get-ChildItem -Path $Root -Recurse -File -Filter *.msg $rows = foreach ($f in $files) { $hash = Get-FileHash -Algorithm SHA256 -Path $f.FullName [pscustomobject]@{ FullPath = $f.FullName Relative = $f.FullName.Substring($Root.Length).TrimStart('\') FileName = $f.Name SizeBytes = $f.Length LastWrite = $f.LastWriteTimeUtc SHA256 = $hash.Hash } } $rows | Export-Csv -NoTypeInformation -Path $Out -Encoding UTF8

Optional: Enrich the Manifest with Headers

If Outlook/approved parser is available, extend the manifest with Subject, SentOn, Sender, or Message-ID for auditing/deduplication. Otherwise, keep the file-level manifest.

# Pseudo-sample only; implement using Outlook COM or an approved parser # Add fields like InternetMessageId, Subject, SentOn to $rows objects

Transfer to Staging (Example)

Use a secure copy method agreed with Jatheon. For S3 staging, the following AWS CLI command syncs MSG files while preserving timestamps:

aws s3 sync "D:\Exports\MSG" "s3://<your-staging-bucket>/MSG" --storage-class STANDARD_IA --only-show-errors

Upload the manifest CSV to the same location (e.g., s3://<bucket>/manifests/msg_manifest.csv) for ingestion validation.

Validation & Sign-Off

  • Compare counts per folder/custodian against the manifest.
  • Spot-check headers (From/To/Cc, Subject, Date) and attachments in Jatheon Cloud.
  • Confirm search parity (keywords, date range, sender/recipient filters).
  • Verify legal holds/retention mapping where applicable.

Was this article helpful?

Comments

0 comments

Please sign in to leave a comment.