LogParser:如何查询多个(非活动)地址的 Exchange 跟踪日志?
LogParser: how to query Exchange Tracking Log for multiple (inactive) addrersses?
我的任务是在我的 Exchange 服务器中查找废弃的邮箱,即过去 90 天内没有活动的邮箱。
为此,我在 LogParser 中进行了查询:
SELECT
TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING([#Fields: date-time]),0,'.'),'yyyy-MM-ddThh:mm:ss') AS DATE,
recipient-address as Receiver,
sender-address as Sender
FROM '[LOGFILEPATH]'
WHERE (sender-address='mrsmith@conoso.com' OR recipient-address='mrsmith@conoso.com') AND Date > TO_TIMESTAMP('2017-01-22 22:18:00', 'yyyy-MM-dd hh:mm:ss')
GROUP BY Receiver, Date, Sender
但是如何在那里传递多个地址?我的意思是如果我需要检查,即 50 个地址,我应该如何将电子邮件地址传递给 Log Parser 查询?
谢谢!
遗憾的是,LogParser 的查询参数必须通过命令行指定,这对于具有多个值的多值参数来说并不方便。
您可以改用两步法:生成 .sql 文件,首先用逗号分隔的地址列表填充 IN 子句,然后 运行 .sql 文件.
你的例子会变成这样:
... WHERE sender-address IN ('mrsmith@contoso.com', 'mrbrown@contoso.com', ...) OR recipient-address IN ('mrsmith@contoso.com', 'mrbrown@contoso.com', ...) ...
我的任务是在我的 Exchange 服务器中查找废弃的邮箱,即过去 90 天内没有活动的邮箱。 为此,我在 LogParser 中进行了查询:
SELECT
TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING([#Fields: date-time]),0,'.'),'yyyy-MM-ddThh:mm:ss') AS DATE,
recipient-address as Receiver,
sender-address as Sender
FROM '[LOGFILEPATH]'
WHERE (sender-address='mrsmith@conoso.com' OR recipient-address='mrsmith@conoso.com') AND Date > TO_TIMESTAMP('2017-01-22 22:18:00', 'yyyy-MM-dd hh:mm:ss')
GROUP BY Receiver, Date, Sender
但是如何在那里传递多个地址?我的意思是如果我需要检查,即 50 个地址,我应该如何将电子邮件地址传递给 Log Parser 查询?
谢谢!
遗憾的是,LogParser 的查询参数必须通过命令行指定,这对于具有多个值的多值参数来说并不方便。
您可以改用两步法:生成 .sql 文件,首先用逗号分隔的地址列表填充 IN 子句,然后 运行 .sql 文件.
你的例子会变成这样:
... WHERE sender-address IN ('mrsmith@contoso.com', 'mrbrown@contoso.com', ...) OR recipient-address IN ('mrsmith@contoso.com', 'mrbrown@contoso.com', ...) ...