移动 Exchange 2010 邮件跟踪日志

移动 Exchange 2010 邮件跟踪日志

我正在停用几个 Exchange 2010 CAS/HT 服务器,这些服务器上有几周的邮件跟踪日志。我想将日志移动到仍可使用 cmdlet 搜索的地方Get-MessageTrackingLogs

我的第一个想法是将它们移动到另一个 CAS/HT 服务器,但显然它们在所有服务器上的名称完全相同。

还有其他选择吗?

答案1

“搜索邮件跟踪日志”文档中的部分内容指出:

您无法从另一台 Exchange 服务器复制邮件跟踪日志文件,然后使用 Get-MessageTrackingLog cmdlet 搜索这些文件。此外,如果您手动保存现有邮件跟踪日志文件,则文件日期时间戳的更改会破坏 Exchange 用于搜索邮件跟踪日志的查询逻辑。

但是,由于日志是结构简单的纯文本文件,因此您可以重命名日志文件,以将它们与其他服务器上的现有文件集成。文件名是某个数字,其中MSTRKyyymmdd-n.logn一个增量,最大值为 9999。如果您没有使用与上次写入访问时间戳相关的复制方法,则可能需要设置复制文件的上次写入时间戳例如使用对象LastWriteTime的属性FileInfo因此。

事件显然不会按时间顺序排列 - 这可能会影响按时间搜索的可行度(不确定是否真的会这样)。我只想用几个手动重命名的日志文件尝试一下,如果可行的话,为其余文件编写一个重命名函数脚本。

您还可以使用 提取数据Get-MessageTrackingLog并将其转储到文件中,Export-Clixml以便稍后重新加载数据并使用 Powershell 函数过滤结果(如果需要)。但是,这将要求您使用其他函数来加载对象,并剥夺您Get-MessageTrackingLog特定的过滤器。

相关内容