Empty Exchange 2010 Server Statistics/Mailflow Reports if default log directory has changed

Exchange 2010 mp 14.02.0071.0

You might be experiencing empty report issues for the following reports if the default log paths for exchange message tracking are changed.

  • Daily Mailflow Statistics
  • Hourly Mailflow Statistics
  • Distribution Group Usage

This post is covering the solution and the way that Exchange 2010 MP collecting the data for these Reports.

Exchange 2010 MP utilizes System.ApplicationLog.GenericCSVLogReader module type as the datasource to collect data from message tracking logs for server statistics. The overridable parameters for this data source (therefore the rules using this datasource) are LogFileDirectory and LogFilePattern.

image

There are 6 rules using this datasource module with write actions collecting the data to DW in Microsoft.Exchange.2010.Reports.mp.

image

These rules collect the data which can be viewed through the vServerStatisticsRawV14 view in DW. Then the data is aggregated to hourly and daily views using custom aggregations (lest pause our story here and leave these custom aggregations not to distract from the root issue) so that the reports (mentioned in the beginning) query.

The default LogFileDirectory for all these roles (edge and hub transport roles) includes the default exchange installation path are as follows.

For ServerStats:

image

For ActiveUserStats:

image

If the Exchange Admin Decides to change this path to a custom one then the rule in OpsMgr wont be aware of the change unless the OpsMgr Admin overrides and therefore wont be collected to DW.

Solution

The following Exchange shell command could be used to determine which servers are not on defaults.

image

for determining the ActiveUserStatistics “get-transportServer | Format-Table Name,ActiveUserStatisticsLogPath” can be used.

Once the servers and the custom LogFileDirectories are Identified the following rules needs to be overrided for the new ones.

Below is a simple table with what to override and how.

 

 

 

 

 

 

 

 

Target Rule Name Override Example
Edge Transport Microsoft.Exchange.2010.Reports.Transport.Edge.ActiveUserMailflowStatistics.DataCollection LogFileDirectory F:\Exchange Logs\ActiveUsersStats
Edge Transport Microsoft.Exchange.2010.Reports.Transport.Edge.ServerMailflowStatistics.DataCollection LogFileDirectory F:\Exchange Logs\ServerStats
Edge Transport Microsoft.Exchange.2010.Reports.Transport.Edge.ServerMailflowStatisticsNew.DataCollection LogFileDirectory F:\Exchange Logs\ServerStats
Hub Transport Microsoft.Exchange.2010.Reports.Transport.Hub.ActiveUserMailflowStatistics.DataCollection LogFileDirectory F:\Exchange Logs\ActiveUsersStats
Hub Transport Microsoft.Exchange.2010.Reports.Transport.Hub.ServerMailflowStatistics.DataCollection LogFileDirectory F:\Exchange Logs\ServerStats
Hub Transport Microsoft.Exchange.2010.Reports.Transport.Hub.ServerMailflowStatisticsNew.DataCollection LogFileDirectory F:\Exchange Logs\ServerStats

 

References

System.ApplicationLog.GenericCSVLogReader - https://msdn.microsoft.com/en-us/library/ff427477.aspx

Exchange 2010 MP Guide - https://www.microsoft.com/download/en/details.aspx?displaylang=en&id=692