<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Exchange Server Pro &#187; Exchange 2010</title>
	<atom:link href="http://exchangeserverpro.com/tag/exchange-2010/feed" rel="self" type="application/rss+xml" />
	<link>http://exchangeserverpro.com</link>
	<description>Microsoft Exchange Server News - Tips - Tutorials</description>
	<lastBuildDate>Wed, 23 May 2012 11:55:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>The Case of the Hub Transport Server Load Imbalance</title>
		<link>http://exchangeserverpro.com/case-hub-transport-server-load-imbalance</link>
		<comments>http://exchangeserverpro.com/case-hub-transport-server-load-imbalance#comments</comments>
		<pubDate>Wed, 23 May 2012 11:55:31 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Articles]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Hub Transport]]></category>
		<category><![CDATA[Log Parser]]></category>
		<category><![CDATA[Message Tracking]]></category>
		<category><![CDATA[Protocol Logs]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4651</guid>
		<description><![CDATA[An interesting look into a real world problem of multiple Exchange Hub Transport servers not load balancing their traffic load as expected.]]></description>
			<content:encoded><![CDATA[<p>I recently dissected a problem in an <a href="http://exchangeserverpro.com">Exchange Server</a> organization that I have decided to share here, as much for the technical root cause as for the troubleshooting steps that were involved.</p>
<p>The problem first appeared as an imbalance in the volume of email traffic that each <a href="http://exchangeserverpro.com/exchange-2010-server-roles">Hub Transport server</a> in one particular site were handling.</p>
<p>This was picked up in some routine performance monitoring. The daily email traffic for each of the five Hub Transport servers in this site for the last 30 days was calculated using <a href="http://exchangeserverpro.com/exchange-2010-message-tracking">message tracking log</a> analysis, and the data used to generate this graph.</p>
<div id="attachment_4849" class="wp-caption aligncenter" style="width: 601px"><img class="size-full wp-image-4849" title="Traffic Load Pattern for Hub Transport Servers" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/hub-transport-traffic-graph.jpg" alt="Traffic Load Pattern for Hub Transport Servers" width="591" height="308" /><p class="wp-caption-text">Traffic Load Pattern for Hub Transport Servers</p></div>
<p>The heavy days are week days (Monday to Friday) and the dips are the weekends.</p>
<p>That trend is not surprising, but what did catch my eye was the way SERVER4 is handling twice the traffic as any other server in that site. Each of the other four servers is handling roughly the same amount as each other, but SERVER4 stands out above them all.</p>
<h2>How Exchange Hub Transport Servers Load Balance Traffic</h2>
<p>This particular site is not internet-facing. In other words it is not responsible for email traffic going in and out of the Exchange organization.</p>
<p>Therefore, the Hub Transport servers in this site are primarily handling messages between mailboxes within that site, or messages to/from other sites (whether for mailboxes in the other sites, or to/from the internet via one of the internet-facing sites).</p>
<p>Hub Transport servers in this scenario do not need any special load balancing configuration applied. Within an Active Directory site, and for email traffic between sites, Exchange performs it&#8217;s own form of automatic load balancing.</p>
<p>In effect, the Exchange server will look at the list of available Hub Transport servers for the route an email message needs to take, randomize that list of servers, and then try each of them starting with the first in the list until it finds one that is able to accept the message. Unless there is a fault of some kind it will usually send to the first Hub Transport server in the randomized list.</p>
<p>So while it doesn&#8217;t perfectly load balance the traffic, it should do so within a pretty small degree of variation.</p>
<h2>Checking for Hub Transport Load Spikes</h2>
<p>One of my first thoughts was that perhaps SERVER4 is being hit with a spike of traffic at some period of the day that is causing it to record more email traffic each day. It is entirely possible that some rogue device or application has been hard-coded to directly address SERVER4 for it&#8217;s SMTP needs.</p>
<p>I once again used message tracking log analysis of the past 30 days to generate a graph of the average email traffic across each hour of the day.</p>
<ul>
<li><a href="http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser">Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser</a></li>
</ul>
<p>The graph turned out to be unremarkable, no load spikes visible.</p>
<div id="attachment_4850" class="wp-caption aligncenter" style="width: 600px"><img class="size-full wp-image-4850" title="Daily email traffic load on the Hub Transport SERVER4" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/server4-daily-email-traffic.jpg" alt="Daily email traffic load on the Hub Transport SERVER4" width="590" height="219" /><p class="wp-caption-text">Daily email traffic load on the Hub Transport SERVER4</p></div>
<h2>Checking for Top Senders</h2>
<p>Since there is no apparent load spike, but the possibility remains that a particular host or application is sending a high volume of email throughout the day, the next angle of attack was to check the top senders (ie remote IP addresses) for email traffic through this server.</p>
<ul>
<li><a href="http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser">Report Top Sender IP’s on Exchange Server 2010 using Log Parser</a></li>
</ul>
<p>The results again were fairly unremarkable. But I also took a few extra moments to run the same message tracking log analysis on the other four Hub Transport servers in the site. This is where things took an interesting turn.</p>
<p>Where SERVER3-5 each showed an expected result for the top senders, SERVER1-2 showed interesting results. Those two servers had plenty of remote IP addresses logging hits on them, but a complete lack of any other Exchange servers in that list.</p>
<p>In other words, it began to appear that SERVER1 and SERVER2 were not handling any Exchange -&gt; Exchange email traffic.</p>
<p>So what was all the email traffic they <em>were</em> logging?</p>
<h2>SMTP Relay Traffic</h2>
<p>Within this site we make available a DNS alias for applications and devices that need to use an SMTP service to send alerts or reports via email. This DNS alias is load balanced across both SERVER1 and SERVER2.</p>
<p>Now, considering that SERVER1 and SERVER2 should be processing their fair share of normal Exchange traffic, as well as the additional load of SMTP relay from applications and devices, you would expect their daily traffic graphs to be higher than the others in the site.</p>
<ul>
<li><a href="http://exchangeserverpro.com/daily-email-traffic-message-tracking-log-parser">Calculate Daily Email Traffic using Message Tracking Logs and Log Parser</a></li>
</ul>
<p>Instead, this is what a single day&#8217;s email traffic amounts to on each Hub Transport server.</p>
<div id="attachment_4851" class="wp-caption aligncenter" style="width: 479px"><img class="size-full wp-image-4851" title="Total Email Traffic per Hub Transport Server" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/traffic-per-server-single-day.jpg" alt="Total Email Traffic per Hub Transport Server" width="469" height="279" /><p class="wp-caption-text">Total Email Traffic per Hub Transport Server</p></div>
<p>To confirm the suspicion that SERVER1 and SERVER2 were not processing any Exchange -&gt; Exchange traffic at all I analysed the message tracking logs for hits from a sample of Hub Transport servers in other sites. When this data was collated the graph looked like this.</p>
<div id="attachment_4855" class="wp-caption aligncenter" style="width: 483px"><img class="size-full wp-image-4855" title="Intra-Org Traffic Per Hub Transport Server" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/intra-org-traffic-per-server.jpg" alt="Intra-Org Traffic Per Hub Transport Server" width="473" height="279" /><p class="wp-caption-text">Intra-Org Traffic Per Hub Transport Server</p></div>
<p>Suspicion confirmed.</p>
<p>SERVER1 and SERVER2 are processing no intra-org email traffic coming in from other sites, and SERVER4 is having to pick up the slack. Although I was curious why the traffic still hadn&#8217;t evenly load balanced across the other three Hub Transport servers that was not the primary concern.</p>
<p>The real concern is why is this happening, and how do we fix it?</p>
<h2>What is Causing the Intra-Org Email Traffic Imbalance?</h2>
<p>The root cause comes back to the SMTP relay configuration that is in place. SERVER1 and SERVER2 each have an additional <a href="http://exchangeserverpro.com/how-to-configure-a-relay-connector-for-exchange-server-2010">Receive Connector configured for SMTP relay</a>.</p>
<p>At the time these were implemented the servers had no additional network interfaces available in them, so the new Receive Connectors are bound to the same interface as the Default Receive Connector.</p>
<p>While this is something you can get away with, it is generally recommended that you dedicate an interface to a relay connector like this for reasons that I&#8217;m about to demonstrate.</p>
<p>When two Receive Connectors share the same interface and IP address they use the list of remote IP addresses configured on the connectors to determine which one should handle a particular connection.</p>
<div id="attachment_4657" class="wp-caption aligncenter" style="width: 454px"><img class="size-full wp-image-4657" title="receive-connector-01" src="http://exchangeserverpro.com/wp-content/uploads/2012/03/receive-connector-01.jpg" alt="Receive Connector remote IP addresses" width="444" height="390" /><p class="wp-caption-text">Receive Connector remote IP addresses</p></div>
<p>Generally speaking the <em>most specific</em> match will determine which connector accepts a connection.</p>
<p>The Default Receive Connector specifies a remote IP range that could be described as &#8220;everything&#8221;.</p>
<div id="attachment_4852" class="wp-caption aligncenter" style="width: 421px"><img class="size-full wp-image-4852" title="Remote IP address on Default Receive Connector" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/receive-connector-02.jpg" alt="Remote IP address on Default Receive Connector" width="411" height="118" /><p class="wp-caption-text">Remote IP address on Default Receive Connector</p></div>
<p>When sharing an IP address between the default connector and receive connector it is easy for the server to determine that a connection from a specific IP address that is explicitly listed in the remote IP list of the relay connector should be handled by the relay connector.</p>
<p>The trouble begins when administrators take a short cut and add entire subnets to the remote IP address list on the relay connector. If that subnet also contains other Exchange servers, connections from those Exchange servers will be processed by the relay connector, not by the default connector, because the subnet is considered more specific than the &#8220;everything&#8221; range that is on the default connector.</p>
<p>A receive connector configured for SMTP relay usage by non-Exchange systems does not have a configuration that Exchange likes when it comes to Exchange -&gt; Exchange communications. So, the connection fails and the Exchange server will attempt to use a different Transport server.</p>
<p>In our case the connections to SERVER1 or SERVER2 were continually failing and SERVER4 was handling the extra load.</p>
<h2>How to Fix the Transport Load Imbalance</h2>
<p>With the root cause clearly identified the possible solutions were clear. We could either:</p>
<ol>
<li>Configure dedicated IP addresses for the relay connectors so that there is no confusion as to which receive connector the server should use to handle Exchange traffic vs application relay traffic.</li>
<li>Remove all of the subnet entries from the remote IP address lists and replace them with only the specific IP addresses that should be permitted to relay.</li>
</ol>
<p>Because the situation with available network interfaces had not changed we went with option 2, with a note to use dedicated interfaces for relay connectors in future designs.</p>
<p>The outcome is a more balanced load among the Hub Transport servers in the site, now completely in line with expectations and providing better performance and resiliency.</p>
<div id="attachment_4853" class="wp-caption aligncenter" style="width: 484px"><img class="size-full wp-image-4853" title="Balanced distribution of traffic across Hub Transport servers" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/traffic-per-server-single-day-02.jpg" alt="Balanced distribution of traffic across Hub Transport servers" width="474" height="282" /><p class="wp-caption-text">Balanced distribution of traffic across Hub Transport servers</p></div>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser" title="Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser">Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser</a></li><li><a href="http://exchangeserverpro.com/generate-smtp-error-statistics-using-log-parser-and-exchange-server-2010-protocol-logs" title="Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs">Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs</a></li><li><a href="http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser" title="Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser">Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser</a></li><li><a href="http://exchangeserverpro.com/daily-email-traffic-message-tracking-log-parser" title="Calculate Daily Email Traffic using Message Tracking Logs and Log Parser">Calculate Daily Email Traffic using Message Tracking Logs and Log Parser</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-message-tracking-event-ids-log-parser" title="Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser">Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/case-hub-transport-server-load-imbalance">The Case of the Hub Transport Server Load Imbalance</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/case-hub-transport-server-load-imbalance/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing Exchange 2010 Boot Camp PLUS</title>
		<link>http://exchangeserverpro.com/announcing-exchange-2010-boot-camp-plus</link>
		<comments>http://exchangeserverpro.com/announcing-exchange-2010-boot-camp-plus#comments</comments>
		<pubDate>Tue, 22 May 2012 11:37:00 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[News]]></category>
		<category><![CDATA[Boot Camp]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Training]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4844</guid>
		<description><![CDATA[Announcing the Exchange 2010 Boot Camp training program, helping you take your Exchange Server skills to the next level.]]></description>
			<content:encoded><![CDATA[<p>Back in January this year when I opened the <a href="http://exchangeserverpro.com/training">Exchange 2010 Boot Camp</a> I had no idea how many people would be interested in joining.</p>
<p>Well, as of right now, <strong>2620 people</strong> have signed up to get access to more than 3 hours of free training videos.</p>
<div id="attachment_4845" class="wp-caption aligncenter" style="width: 600px"><a href="http://exchangeserverpro.com/training"><img class="size-full wp-image-4845" title="Exchange 2010 Boot Camp video" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/bootcamp.jpg" alt="Exchange 2010 Boot Camp video" width="590" height="420" /></a><p class="wp-caption-text">Exchange 2010 Boot Camp video</p></div>
<p>I&#8217;m pleased that so many of you have found the training to be valuable. And amongst all of the positive feedback many of you are telling me the same thing &#8211; <em>you want more</em>.</p>
<p>More of the same quality, focussed, practical lessons on Exchange Server 2010 installation, configuration and administration.</p>
<p>So today I&#8217;m announcing the <strong>Exchange 2010 Boot Camp PLUS</strong> training program.</p>
<p>PLUS membership gets you more training modules, more advanced training scenarios, and extra access to download and watch videos offline on your computer or tablet.</p>
<p style="text-align: center;"><a href="http://exchangeserverpro.com/training">Click Here to Find Out More</a></p>
<p>For a limited time I&#8217;m offering a special introductory price for those who want to sign up now before the first new training modules are released in a couple of weeks.</p>
<p>This introductory offer will end once the first new training modules are available, and the price will go up. But if you sign up now you&#8217;re locked in at the introductory price, and you won&#8217;t pay another dollar as new lessons are added to the training program.</p>
<p>I&#8217;m committed to providing quality training at an affordable price (especially in these tough economic times) so the regular price will not be super expensive, but this will be the only time this low introductory price will be offered.</p>
<p style="text-align: center;"><a href="http://exchangeserverpro.com/training">Sign Up Here</a></p>
<p>By the way, there are some frequently asked questions <a href="http://exchangeserverpro.com/training">on the page</a> that may answer any concerns you have at this point, but if you have any other questions you can get in touch with me using this <a href="http://exchangeserverpro.com/contact">contact form</a>.</p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/test-lab-email-traffic-generator-powershell-script" title="PowerShell Script to Generate Email Traffic in a Test Lab Environment">PowerShell Script to Generate Email Traffic in a Test Lab Environment</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-boot-camp-update" title="Exchange 2010 Boot Camp Update">Exchange 2010 Boot Camp Update</a></li><li><a href="http://exchangeserverpro.com/register-interest-exchange-2010-boot-camp" title="Register Your Interest for the Exchange 2010 Boot Camp">Register Your Interest for the Exchange 2010 Boot Camp</a></li><li><a href="http://exchangeserverpro.com/exchange-server-2010-training" title="Exchange Server 2010 Training">Exchange Server 2010 Training</a></li><li><a href="http://exchangeserverpro.com/free-exchange-server-technical-education-videos" title="Free Exchange Server Technical Education Videos">Free Exchange Server Technical Education Videos</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/announcing-exchange-2010-boot-camp-plus">Announcing Exchange 2010 Boot Camp PLUS</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/announcing-exchange-2010-boot-camp-plus/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to Prevent Meeting Requests Appearing in Delegate&#8217;s Outlook Calendars</title>
		<link>http://exchangeserverpro.com/how-to-prevent-meeting-requests-appearing-in-delegates-outlook-calendars</link>
		<comments>http://exchangeserverpro.com/how-to-prevent-meeting-requests-appearing-in-delegates-outlook-calendars#comments</comments>
		<pubDate>Mon, 21 May 2012 12:51:39 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Delegates]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Meeting Requests]]></category>
		<category><![CDATA[Outlook]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4835</guid>
		<description><![CDATA[How to create new Outlook meeting requests as a delegate so that they are sent on behalf of the manager and do not appear in the delegate's own calendar.]]></description>
			<content:encoded><![CDATA[<p>In the article on <a href="http://exchangeserverpro.com/exchange-server-2010-room-mailboxes-step-by-step-guide">Exchange 2010 Room Mailboxes</a> a reader <a href="http://exchangeserverpro.com/exchange-server-2010-room-mailboxes-step-by-step-guide#comment-6877">asks</a>:</p>
<blockquote><p>Do you know if there is a way to stop accepted meeting room resource requests going into the meeting organiser’s calendar? This is because the PA’s request the meeting rooms on behalf of their bosses but they aren’t going to attend the meeting themselves.</p></blockquote>
<p>The solution to this problem is in how the meeting request is created.</p>
<p>If the delegate opens a new meeting request for themselves and adds their manager and other attendees to it, then the delegate will also be include as the meeting organizer.</p>
<div id="attachment_4836" class="wp-caption aligncenter" style="width: 421px"><img class="size-full wp-image-4836" title="Meeting request sent by the delegate as the meeting organizer" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/delegates01.jpg" alt="Meeting request sent by the delegate as the meeting organizer" width="411" height="282" /><p class="wp-caption-text">Meeting request sent by the delegate as the meeting organizer</p></div>
<p>Instead, if the delegate starts the new meeting request by first opening their manager&#8217;s calendar and selecting a block of time, the meeting request will be on behalf of the manager, and will not go into the delegate&#8217;s calendar.</p>
<div id="attachment_4837" class="wp-caption aligncenter" style="width: 404px"><img class="size-full wp-image-4837" title="Meeting request sent by delegate on behalf of their manager" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/delegates02.jpg" alt="Meeting request sent by delegate on behalf of their manager" width="394" height="274" /><p class="wp-caption-text">Meeting request sent by delegate on behalf of their manager</p></div>
<p>Depending on the delegate settings the manager has configured the delegate can then receive all of the meeting responses from attendees and room mailboxes.</p>
<p><img class="aligncenter size-full wp-image-4838" title="delegates03" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/delegates03.jpg" alt="" width="423" height="332" /></p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/error-outlook-unable-recover-items-folder" title="Error: Outlook Was Unable to Recover Some or All of the Items in this Folder">Error: Outlook Was Unable to Recover Some or All of the Items in this Folder</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-block-non-cached-mode-outlook" title="How to Block Non-Cached Mode Outlook Clients with Exchange 2010">How to Block Non-Cached Mode Outlook Clients with Exchange 2010</a></li><li><a href="http://exchangeserverpro.com/outlook-error-delegates-settings-saved-correctly" title="Outlook Error: The Delegates Settings Were Not Saved Correctly">Outlook Error: The Delegates Settings Were Not Saved Correctly</a></li><li><a href="http://exchangeserverpro.com/update-rollup-3-exchange-2010-sp1-exchange-2007-sp3" title="Update Rollup 3 for Exchange 2010 SP1 and Exchange 2007 SP3">Update Rollup 3 for Exchange 2010 SP1 and Exchange 2007 SP3</a></li><li><a href="http://exchangeserverpro.com/case-hub-transport-server-load-imbalance" title="The Case of the Hub Transport Server Load Imbalance">The Case of the Hub Transport Server Load Imbalance</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/how-to-prevent-meeting-requests-appearing-in-delegates-outlook-calendars">How to Prevent Meeting Requests Appearing in Delegate&#8217;s Outlook Calendars</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/how-to-prevent-meeting-requests-appearing-in-delegates-outlook-calendars/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Restricting Room Mailbox Bookings to Specific Groups in Exchange Server 2010</title>
		<link>http://exchangeserverpro.com/exchange-2010-restricting-room-mailbox-bookings-to-specific-groups</link>
		<comments>http://exchangeserverpro.com/exchange-2010-restricting-room-mailbox-bookings-to-specific-groups#comments</comments>
		<pubDate>Mon, 21 May 2012 12:24:31 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Room Mailboxes]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4828</guid>
		<description><![CDATA[How to restrict the booking of a Room Mailbox to only specific users or groups in Exchange Server 2010.]]></description>
			<content:encoded><![CDATA[<p>In the comments of the <a href="http://exchangeserverpro.com/exchange-server-2010-room-mailboxes-step-by-step-guide">Exchange 2010 Room Mailboxes</a> article a reader <a href="http://exchangeserverpro.com/exchange-server-2010-room-mailboxes-step-by-step-guide#comment-6919">asks</a>:</p>
<blockquote><p>I was wondering, is there anyway to make only a specific group being able to book a specific conference room? We have mailboxes set up and is working perfectly, but we want only one specific section/unit to be able to book that conference room, is that possible?</p></blockquote>
<p>Yes, this can be configured on room mailboxes quite easily.</p>
<p>In the <strong>Properties</strong> of the room mailbox go to the <strong>Resource In-Policy Requests</strong> tab and configure selected recipients who are permitted to book the room.</p>
<p><img class="aligncenter size-full wp-image-4829" title="room-mailbox-limiting-bookings" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/room-mailbox-limiting-bookings.jpg" alt="" width="444" height="299" /></p>
<p>When a person who is not a in that selected recipients list tries to book the room they will receive a &#8220;Declined&#8221; message similar to this.</p>
<p><img class="aligncenter size-full wp-image-4830" title="declined" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/declined.jpg" alt="" width="432" height="269" /></p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/show-full-freebusy-exchange-2010-room-resource-mailboxes" title="Show Full Free/Busy Details for Exchange Server 2010 Room and Resource Mailboxes">Show Full Free/Busy Details for Exchange Server 2010 Room and Resource Mailboxes</a></li><li><a href="http://exchangeserverpro.com/find-meeting-rooms" title="How to Find Available Meeting Rooms">How to Find Available Meeting Rooms</a></li><li><a href="http://exchangeserverpro.com/exchange-server-2010-room-mailboxes-step-by-step-guide" title="Exchange Server 2010 Room Mailboxes Step by Step Guide">Exchange Server 2010 Room Mailboxes Step by Step Guide</a></li><li><a href="http://exchangeserverpro.com/case-hub-transport-server-load-imbalance" title="The Case of the Hub Transport Server Load Imbalance">The Case of the Hub Transport Server Load Imbalance</a></li><li><a href="http://exchangeserverpro.com/announcing-exchange-2010-boot-camp-plus" title="Announcing Exchange 2010 Boot Camp PLUS">Announcing Exchange 2010 Boot Camp PLUS</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/exchange-2010-restricting-room-mailbox-bookings-to-specific-groups">Restricting Room Mailbox Bookings to Specific Groups in Exchange Server 2010</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/exchange-2010-restricting-room-mailbox-bookings-to-specific-groups/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs</title>
		<link>http://exchangeserverpro.com/generate-smtp-error-statistics-using-log-parser-and-exchange-server-2010-protocol-logs</link>
		<comments>http://exchangeserverpro.com/generate-smtp-error-statistics-using-log-parser-and-exchange-server-2010-protocol-logs#comments</comments>
		<pubDate>Thu, 10 May 2012 11:00:14 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Exchange 2007]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Log Parser]]></category>
		<category><![CDATA[Protocol Logs]]></category>
		<category><![CDATA[SMTP]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4808</guid>
		<description><![CDATA[How to generate a report of the number of SMTP errors occurring on an Exchange server using Log Parser and the Exchange protocol logs.]]></description>
			<content:encoded><![CDATA[<p>The <a href="http://exchangeserverpro.com">Exchange Server 2010</a> protocol logs can reveal some interesting information to you about the number of SMTP errors that are occurring for connections to or from your server.</p>
<p>This information is useful for scenarios such as checking whether your outbound mail may experiencing a high rate of failure, or discovering whether someone is continually trying to relay through your email server (in which case you could then look at the <a href="http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser">top sender IP addresses</a> to investigate further).</p>
<p>Remember that protocol logging is not enabled by default on Exchange 2010, and must be enabled on a per-connector basis if you want to use it.</p>
<p>For SMTP error statistics we can use Log Parser to check the protocol logs for instances of <a href="http://www.iana.org/assignments/smtp-enhanced-status-codes/smtp-enhanced-status-codes.xml">SMTP status codes</a> starting with &#8220;5&#8243; (which are permanent failures). The Log Parser query for this is as follows:</p>
<pre>SELECT data as [Status Code],
	Count(*) as Hits
FROM *.log
WHERE data LIKE '5%'
GROUP BY data
ORDER BY Hits DESC</pre>
<p>When run from the folder containing the protocol logs it will be as follows:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT data as [Status Code],Count(*) as Hits FROM *.log WHERE data LIKE '5%' GROUP BY data ORDER BY Hits DESC" -i:CSV -nSkipLines:4 -rtp:-1</pre>
<p>This will give you output similar to this:</p>
<pre>Status Code                                       Hits
------------------------------------------------- ----
500 5.3.3 Unrecognized command                    3632
501 5.1.3 Invalid address                         1411
501 5.1.7 Invalid address                         200
554 5.4.6 Hop count exceeded - possible mail loop 100
503 5.5.2 Send hello first                        20
503 5.5.2 Sender already specified                4
501 5.5.4 Unrecognized parameter                  2
504 5.7.4 Unrecognized authentication type        1

Statistics:
-----------
Elements processed: 13113294
Elements output:    8
Execution time:     150.15 seconds (00:02:30.15)</pre>
<p>You can also report on the number of SMTP errors occurring each day to get a baseline, which will help when you need to identify whether a sudden spike in SMTP errors has occurred. This Log Parser query will be as follows:</p>
<pre>SELECT TO_LOCALTIME(TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING([#Fields: date-time]),0,'T'), 'yyyy-MM-dd')) AS Date,
	COUNT(*) AS Hits
FROM *.log
WHERE (data LIKE '5%')
GROUP BY Date
ORDER BY Date ASC</pre>
<p>When run from the protocol log directory it will be as follows:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT TO_LOCALTIME(TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING([#Fields: date-time]),0,'T'), 'yyyy-MM-dd')) AS Date, COUNT(*) AS Hits from *.log where (data LIKE '5%') GROUP BY Date ORDER BY Date ASC" -i:CSV -nSkipLines:4 -rtp:-1</pre>
<p>And of course, provided you have the Office Web Components installed, you can generate a graph of this same data.</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT TO_LOCALTIME(TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING([#Fields: date-time]),0,'T'), 'yyyy-MM-dd')) AS Date, COUNT(*) AS [SMTP Errors] INTO DailySMTPErrors.gif from *.log where (data LIKE '5%') GROUP BY Date ORDER BY Date ASC" -i:CSV -nSkipLines:4 -chartType:Column3D</pre>
<p>Which will give you a graph similar to this:</p>
<p><img class="aligncenter size-full wp-image-4809" title="DailySMTPErrors" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/DailySMTPErrors.gif" alt="" width="590" height="442" /></p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/case-hub-transport-server-load-imbalance" title="The Case of the Hub Transport Server Load Imbalance">The Case of the Hub Transport Server Load Imbalance</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser" title="Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser">Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser</a></li><li><a href="http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser" title="Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser">Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser</a></li><li><a href="http://exchangeserverpro.com/daily-email-traffic-message-tracking-log-parser" title="Calculate Daily Email Traffic using Message Tracking Logs and Log Parser">Calculate Daily Email Traffic using Message Tracking Logs and Log Parser</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-message-tracking-event-ids-log-parser" title="Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser">Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/generate-smtp-error-statistics-using-log-parser-and-exchange-server-2010-protocol-logs">Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/generate-smtp-error-statistics-using-log-parser-and-exchange-server-2010-protocol-logs/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser</title>
		<link>http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser</link>
		<comments>http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser#comments</comments>
		<pubDate>Wed, 09 May 2012 11:00:56 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Edge Transport]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Hub Transport]]></category>
		<category><![CDATA[Log Parser]]></category>
		<category><![CDATA[Message Tracking]]></category>
		<category><![CDATA[Protocol Logs]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4802</guid>
		<description><![CDATA[How to use Log Parser, message tracking and protocol logs to report the top sender IPs for an Exchange 2010 Hub or Edge Transport server.]]></description>
			<content:encoded><![CDATA[<p>When you are investigating <a href="http://exchangeserverpro.com">Exchange</a> Transport server load one of the interesting pieces of data to look at is the IP addresses that are connecting to your server the most.</p>
<p>There are two different log sets that you can use for this:</p>
<ul>
<li>Protocol logs</li>
<li>Message Tracking logs</li>
</ul>
<p>One of the best ways to describe the difference between these is that protocol logs will capture SMTP connections that may or may not make it all the way in to the Transport pipeline. For example a connection from a spammer that gets blocked by <a href="http://exchangeserverpro.com/exchange-2010-edge-transport-server-configuring-ip-block-list-providers">IP filtering</a> will appear in the protocol logs but not the message tracking logs.</p>
<p>The detail captured in a protocol log will look a lot like what you would see if you were manually <a href="http://exchangeserverpro.com/how-to-send-email-via-telnet">testing SMTP via telnet</a> on a server.</p>
<p><a href="http://exchangeserverpro.com/exchange-2010-message-tracking">Message tracking logs</a> will capture messages that get processed through the Transport pipeline, and capture information such as message submission and delivery rather than the SMTP conversation that protocol logging reflects.</p>
<p>Message tracking is also turned on by default and is set per-server, whereas protocol logging is not turned on by default and is set per-connector.</p>
<p>For this demonstration I&#8217;ll be using my <a href="http://exchangeserverpro.com/exchange-2010-edge-transport-server-introduction">Edge Transport server</a> simply because it has slightly more interesting data since it receives a lot of connections from the internet.</p>
<h2>Get Top Sender IP&#8217;s from Protocol Logs with Log Parser</h2>
<p>To get the top sender IP&#8217;s from the protocol logs we can use this Log Parser query.</p>
<pre>SELECT EXTRACT_PREFIX(remote-endpoint,0,':') as IP,
	REVERSEDNS(EXTRACT_PREFIX(remote-endpoint,0,':')) as Name,
	Count(*) as Hits
FROM *.log
WHERE data LIKE '%EHLO%'
GROUP BY IP
ORDER BY Hits DESC</pre>
<p>When run from the folder containing the protocol logs (in this case C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\ProtocolLog\SmtpReceive) it looks like this:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT EXTRACT_PREFIX(remote-endpoint,0,':') as IP,REVERSEDNS(EXTRACT_PREFIX(remote-endpoint,0,':')) as Name,Count(*) as Hits from *.log WHERE data LIKE '%EHLO%' GROUP BY IP ORDER BY Hits DESC" -i:CSV -nSkipLines:4 -rtp:-1</pre>
<p>This will give you output similar to this:</p>
<pre>IP              Name                                    Hits
--------------- --------------------------------------- ----
83.222.31.220   v8622.vps.masterhost.ru                 52
204.13.248.72   mho-02-ewr.mailhop.org                  12
50.78.250.97    dcmail.designercabinetry.com            9
10.1.1.21       ho-ex2010-mb1.exchangeserverpro.net     8
64.61.92.26     static-64-61-92-26.isp.broadviewnet.net 7
217.108.179.228 mailhost.el-internationale.com          7
69.60.118.117   mail1.ambr.com.br                       4
10.1.1.22       ho-ex2010-mb2.exchangeserverpro.net     4
95.154.196.147  95.154.196.147                          4
118.22.2.202    pc2.land-ho-unet.ocn.ne.jp              3
187.108.193.223 cloud.newmediahost.com.br               2
109.169.77.169  109.169.77.169                          2
59.106.64.208   ns1.uranaikan.info                      2
204.13.248.71   mho-01-ewr.mailhop.org                  2
78.129.222.16   78.129.222.16                           2
199.119.76.15   mail.seoauditions.com                   1

Statistics:
-----------
Elements processed: 3359
Elements output:    16
Execution time:     17.41 seconds</pre>
<p>This part of the query string is important to note:</p>
<pre>WHERE data LIKE '%EHLO%'</pre>
<p>This means that only those log entries where the EHLO occurred will be counted in the stats that Log Parser outputs. If you leave it out you&#8217;ll see a &#8220;Hit&#8221; for every log entry a remote IP generated. Depending on how &#8220;chatty&#8221; that particular SMTP conversation was it may skew the results a little. However since we&#8217;re looking more for indicative numbers rather than precise numbers it doesn&#8217;t matter which way you choose to go (at least not to me).</p>
<h2>Get Top Sender IP&#8217;s from Message Tracking Logs with Log Parser</h2>
<p>For message tracking logs the syntax is a little different because the field names in the log files are different.</p>
<pre>SELECT client-ip as IP,
	REVERSEDNS(client-ip) as Name,
	Count(*) as Hits
FROM *.log
WHERE (event-id='RECEIVE')
GROUP BY IP
ORDER BY Hits DESC</pre>
<p>When run from the folder containing the message tracking logs (in this case C:\Program Files\Microsoft\Exchange Server\V14\TransportRoles\Logs\MessageTracking) it will look like this:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT client-ip as IP,REVERSEDNS(client-ip) as Name,Count(*) as Hits from *.log WHERE (event-id='RECEIVE') GROUP BY IP ORDER BY Hits DESC" -i:CSV -nSkipLines:4 -rtp:-1</pre>
<p>If you get too much output you can limit it to the top X results by modifying the query slightly:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT TOP 20 client-ip as IP,REVERSEDNS(client-ip) as Name,Count(*) as Hits from *.log WHERE (event-id='RECEIVE') GROUP BY IP ORDER BY Hits DESC" -i:CSV -nSkipLines:4 -rtp:-1</pre>
<p>This will give you output similar to this:</p>
<pre>IP              Name                                 Hits
--------------- ------------------------------------ ----
204.93.210.179  mariajunco.com                       32
10.1.1.22       ho-ex2010-mb2.exchangeserverpro.net  23
216.151.172.180 hosted.airvm.net                     22
10.1.1.21       ho-ex2010-mb1.exchangeserverpro.net  22
83.142.48.139   83.142.48.139                        17
67.215.235.199  67.215.235.199.static.quadranet.com  13
109.169.76.124  109.169.76.124                       10
109.169.55.146  109.169.55.146                       10
109.169.62.15   109.169.62.15                        10
109.169.60.137  109.169.60.137                       9
173.254.208.113 173.254.208.113.static.quadranet.com 9
59.106.64.208   ns1.uranaikan.info                   8
72.11.150.131   72.11.150.131.static.quadranet.com   7
109.169.73.116  109.169.73.116                       7
109.169.55.135  109.169.55.135                       7
189.39.9.214    mail3.ibcbrasil.com.br               5
204.13.248.72   mho-02-ewr.mailhop.org               5
109.169.87.100  109.169.87.100                       4
109.169.84.105  109.169.84.105                       4
169.232.46.177  out-58.smtp.ucla.edu                 3

Statistics:
-----------
Elements processed: 1018
Elements output:    20
Execution time:     74.03 seconds (00:01:14.03)</pre>
<p>You can use this information in a lot of situations such as when investigating load issues, or planning to decommission servers</p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/case-hub-transport-server-load-imbalance" title="The Case of the Hub Transport Server Load Imbalance">The Case of the Hub Transport Server Load Imbalance</a></li><li><a href="http://exchangeserverpro.com/generate-smtp-error-statistics-using-log-parser-and-exchange-server-2010-protocol-logs" title="Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs">Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs</a></li><li><a href="http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser" title="Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser">Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser</a></li><li><a href="http://exchangeserverpro.com/daily-email-traffic-message-tracking-log-parser" title="Calculate Daily Email Traffic using Message Tracking Logs and Log Parser">Calculate Daily Email Traffic using Message Tracking Logs and Log Parser</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-message-tracking-event-ids-log-parser" title="Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser">Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser">Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Show Full Free/Busy Details for Exchange Server 2010 Room and Resource Mailboxes</title>
		<link>http://exchangeserverpro.com/show-full-freebusy-exchange-2010-room-resource-mailboxes</link>
		<comments>http://exchangeserverpro.com/show-full-freebusy-exchange-2010-room-resource-mailboxes#comments</comments>
		<pubDate>Sun, 06 May 2012 13:35:48 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Solutions]]></category>
		<category><![CDATA[Calendars]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Free/Busy]]></category>
		<category><![CDATA[Resource Mailboxes]]></category>
		<category><![CDATA[Room Mailboxes]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4788</guid>
		<description><![CDATA[How to show the full free/busy details to users for Exchange Server 2010 Room and Resource mailboxes.]]></description>
			<content:encoded><![CDATA[<p>In the comments of my article about <a href="http://exchangeserverpro.com/exchange-server-2010-room-mailboxes-step-by-step-guide">Exchange Server 2010 Room mailboxes</a> some readers wanted to know how they can configure the Room mailbox to show more details about existing meetings in the free/busy information that is revealed to other users on the network.</p>
<p>Consider the scenario where a room is booked, and perhaps another person wants to contact existing meeting organizers to ask if they can remove a booking to make room for a more important one, but the free/busy information (as seen in the Outlook Scheduling Assistant) doesn&#8217;t indicate who made the bookings.</p>
<p><img class="aligncenter size-full wp-image-4793" title="exchange-room-mailbox-free-busy-0" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-room-mailbox-free-busy-01.jpg" alt="" width="280" height="118" /></p>
<p>This is caused by the default permissions on the mailbox&#8217;s calendar. These default permissions are set to show only the availability information (eg free, busy, tentative) but not any other details.</p>
<p>In the calendar permissions (if you were modifying them via Outlook) it would look like this.</p>
<p><img class="aligncenter size-full wp-image-4794" title="exchange-room-mailbox-free-busy-1" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-room-mailbox-free-busy-1.jpg" alt="" width="391" height="363" /></p>
<p>If viewed in the shell it with <a href="http://technet.microsoft.com/en-us/library/dd335061.aspx">Get-MailboxFolderPermission</a> it would appear like this.</p>
<pre>[PS] C:\&gt;Get-MailboxFolderPermission homeetingroom1:\Calendar

RunspaceId   : 8706cde4-2cb5-4519-9a46-a46fcc0c450c
FolderName   : Calendar
User         : Default
AccessRights : {AvailabilityOnly}
Identity     : Default
IsValid      : True</pre>
<p>If you modified the permissions using Outlook the new permission level of Reviewer would allow other users to see more details about existing meetings.</p>
<p><img class="aligncenter size-full wp-image-4796" title="exchange-room-mailbox-free-busy-2" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-room-mailbox-free-busy-2.jpg" alt="" width="395" height="366" /></p>
<p>You can apply that same permission in the Exchange Management Shell using the <a href="http://technet.microsoft.com/en-us/library/ff522363.aspx">Set-MailboxFolderPermission</a> cmdlet (note: Set-MailboxFolderPermission modifies an existing entry, whereas <a href="http://technet.microsoft.com/en-us/library/dd298062.aspx">Add-MailboxFolderPermission</a> would be used to add a new entry to the permissions).</p>
<pre>Set-MailboxFolderPermission homeetingroom1:\Calendar -User Default -AccessRights Reviewer</pre>
<p>The results can be seen in the Get-MailboxFolderPermission output.</p>
<pre>[PS] C:\&gt;Get-MailboxFolderPermission homeetingroom1:\Calendar

RunspaceId   : 8706cde4-2cb5-4519-9a46-a46fcc0c450c
FolderName   : Calendar
User         : Default
AccessRights : {Reviewer}
Identity     : Default
IsValid      : True

RunspaceId   : 8706cde4-2cb5-4519-9a46-a46fcc0c450c
FolderName   : Calendar
User         : Anonymous
AccessRights : {None}
Identity     : Anonymous
IsValid      : True</pre>
<p>When creating a new meeting request users are now able to see more details about the meeting organizer.</p>
<p><img class="aligncenter size-full wp-image-4797" title="exchange-room-mailbox-free-busy-3" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-room-mailbox-free-busy-3.jpg" alt="" width="285" height="128" /></p>
<p>You can modify all the default permissions on Room mailboxes with the following commands in the Exchange Management Shell.</p>
<pre>[PS] C:\&gt;$rooms = Get-Mailbox -RecipientTypeDetails RoomMailbox
[PS] C:\&gt;$rooms | %{Set-MailboxFolderPermission $_":\Calendar" -User Default -AccessRights Reviewer}</pre>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/find-meeting-rooms" title="How to Find Available Meeting Rooms">How to Find Available Meeting Rooms</a></li><li><a href="http://exchangeserverpro.com/exchange-server-2010-room-mailboxes-step-by-step-guide" title="Exchange Server 2010 Room Mailboxes Step by Step Guide">Exchange Server 2010 Room Mailboxes Step by Step Guide</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-restricting-room-mailbox-bookings-to-specific-groups" title="Restricting Room Mailbox Bookings to Specific Groups in Exchange Server 2010">Restricting Room Mailbox Bookings to Specific Groups in Exchange Server 2010</a></li><li><a href="http://exchangeserverpro.com/exchange-2007-room-mailbox-automatically-accepting-bookings" title="Exchange 2007 Room Mailbox Not Automatically Accepting Bookings">Exchange 2007 Room Mailbox Not Automatically Accepting Bookings</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-shared-calendar-permissions-nested-groups" title="Exchange 2010 Shared Calendar Permissions and Nested Groups">Exchange 2010 Shared Calendar Permissions and Nested Groups</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/show-full-freebusy-exchange-2010-room-resource-mailboxes">Show Full Free/Busy Details for Exchange Server 2010 Room and Resource Mailboxes</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/show-full-freebusy-exchange-2010-room-resource-mailboxes/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Managing the Replication Source for Exchange Server 2010 Mailbox Database Reseed</title>
		<link>http://exchangeserverpro.com/managing-the-replication-source-for-exchange-server-2010-mailbox-database-reseed</link>
		<comments>http://exchangeserverpro.com/managing-the-replication-source-for-exchange-server-2010-mailbox-database-reseed#comments</comments>
		<pubDate>Wed, 02 May 2012 13:48:56 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[DAG]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Mailbox Server]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4777</guid>
		<description><![CDATA[How to choose the optimal source server for an Exchange Server 2010 mailbox database reseed operation.]]></description>
			<content:encoded><![CDATA[<p>In some Exchange Server 2010 environments the administrator may encounter a situation in which mailbox databases need to be reseeded from a single server in one site to multiple servers in another site.</p>
<p>Consider a scenario where the mailbox database is active in a site with a single mailbox server, and has passive copies in a site with two mailbox servers. The two mailbox servers hosting passive copies need reseeding due to some fault that has occurred.</p>
<div id="attachment_4778" class="wp-caption aligncenter" style="width: 600px"><img class="size-full wp-image-4778" title="Exchange Server 2010 multi-site DAG" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-2010-dag-reseed-1.jpg" alt="Exchange Server 2010 multi-site DAG" width="590" height="250" /><p class="wp-caption-text">Exchange Server 2010 multi-site DAG</p></div>
<p>If the reseed was commenced for both servers it would effectively mean the data was replicated across the WAN twice, which may not be ideal depending on the available bandwidth.</p>
<div id="attachment_4780" class="wp-caption aligncenter" style="width: 600px"><img class="size-full wp-image-4780" title="Exchange 2010 database reseed from active copy" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-2010-dag-reseed-21.jpg" alt="Exchange 2010 database reseed from active copy" width="590" height="250" /><p class="wp-caption-text">Exchange 2010 database reseed from active copy</p></div>
<p>This is because by default the database copy update operation uses the active copy of the database as the source. This would be the case if you ran the <a href="http://technet.microsoft.com/en-us/library/dd335201.aspx">Update-MailboxDatabaseCopy</a> cmdlet with only the mandatory parameters.</p>
<p>However if you use the console wizard to perform the operation you&#8217;ll notice an option to choose the source for the reseed.</p>
<div id="attachment_4781" class="wp-caption aligncenter" style="width: 491px"><img class="size-full wp-image-4781" title="Choosing a database reseed source in Exchange 2010" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-2010-dag-reseed-4.jpg" alt="Choosing a database reseed source in Exchange 2010" width="481" height="227" /><p class="wp-caption-text">Choosing a database reseed source in Exchange 2010</p></div>
<p>This allows you to perform the reseed more efficiently in terms of network bandwidth by reseeding one server first, and then using that passive copy as the source for the second reseed operation.</p>
<div id="attachment_4783" class="wp-caption aligncenter" style="width: 600px"><img class="size-full wp-image-4783" title="Exchange 2010 DAG reseed from passive copy" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/exchange-2010-dag-reseed-31.jpg" alt="Exchange 2010 DAG reseed from passive copy" width="590" height="250" /><p class="wp-caption-text">Exchange 2010 DAG reseed from passive copy</p></div>
<p>This can also be performed using Update-MailboxDatabaseCopy with the <strong>-SourceServer</strong> parameter, for example:</p>
<pre>Update-MailboxDatabaseCopy MB-HO-01\br-ex2010-mb -SourceServer ho-ex2010-mb2</pre>
<p>An alternative would be to reseed one server first, then move the active mailbox database copy to that server before commencing the second database reseed in that site.</p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/how-to-install-updates-on-exchange-server-2010-database-availability-groups" title="How to Install Updates on Exchange Server 2010 Database Availability Groups">How to Install Updates on Exchange Server 2010 Database Availability Groups</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-passive-database-copies-included-backups-dag-members" title="Exchange 2010: Are Passive Database Copies Included in Backups of DAG Members?">Exchange 2010: Are Passive Database Copies Included in Backups of DAG Members?</a></li><li><a href="http://exchangeserverpro.com/exchange-recovery-failed-dag-member-exchange-server-2010" title="Exchange Recovery: Failed DAG Member in Exchange Server 2010">Exchange Recovery: Failed DAG Member in Exchange Server 2010</a></li><li><a href="http://exchangeserverpro.com/how-to-reseed-a-failed-mailbox-database-copy-in-exchange-server-2010" title="How to Reseed a Failed Mailbox Database Copy in Exchange Server 2010">How to Reseed a Failed Mailbox Database Copy in Exchange Server 2010</a></li><li><a href="http://exchangeserverpro.com/exchange-server-2010-database-availability-group-installation-step-by-step" title="Exchange Server 2010 Database Availability Group Installation Step by Step">Exchange Server 2010 Database Availability Group Installation Step by Step</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/managing-the-replication-source-for-exchange-server-2010-mailbox-database-reseed">Managing the Replication Source for Exchange Server 2010 Mailbox Database Reseed</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/managing-the-replication-source-for-exchange-server-2010-mailbox-database-reseed/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser</title>
		<link>http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser</link>
		<comments>http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser#comments</comments>
		<pubDate>Wed, 02 May 2012 11:47:30 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Exchange 2007]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Log Parser]]></category>
		<category><![CDATA[Message Tracking]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4762</guid>
		<description><![CDATA[How to use Log Parser to generate an hourly email traffic report from the Exchange Server message tracking logs.]]></description>
			<content:encoded><![CDATA[<p>Most <a href="http://exchangeserverpro.com">Exchange server </a>environments will demonstrate a predictable volume of email traffic throughout a typical day. However from time to time some problem may arise that causes an unusual spike in email traffic.</p>
<p>To be able to identify this type of problem you should first know what your normal email traffic patterns look like. You can find this information by using <a href="http://technet.microsoft.com/en-us/scriptcenter/dd919274">Log Parser</a> to search through your Exchange server&#8217;s <a href="http://exchangeserverpro.com/exchange-2010-message-tracking">message tracking logs</a>.</p>
<p>There are two ways to look at this traffic.</p>
<ul>
<li>As a total of the traffic per hour for all days combined</li>
<li>As the traffic per hour for each separate day</li>
</ul>
<h2>Total Email Traffic Per Hour for All Days Combined</h2>
<p>First let&#8217;s look at the Log Parser query to calculate the total email traffic per hour for all days combined.</p>
<pre>SELECT QUANTIZE(TO_LOCALTIME(TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING(EXTRACT_SUFFIX([#Fields: date-time],0,'T')),0,'.'), 'hh:mm:ss')),3600) AS Hour,
	COUNT(*) AS Messages
FROM *.log
WHERE (event-id='RECEIVE')
GROUP BY Hour
ORDER BY Hour ASC</pre>
<p>When run from the folder where the message tracking logs are located the full syntax is:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT QUANTIZE(TO_LOCALTIME(TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING(EXTRACT_SUFFIX([#Fields: date-time],0,'T')),0,'.'), 'hh:mm:ss')),3600) AS Hour, COUNT(*) AS Messages from *.log where (event-id='RECEIVE') GROUP BY Hour ORDER BY Hour ASC" -i:CSV -nSkipLines:4 -rtp:-1</pre>
<p>This will return results similar to these:</p>
<pre>Hour     Messages
-------- --------
00:00:00 408
01:00:00 415
02:00:00 363
03:00:00 347
04:00:00 273
05:00:00 327
06:00:00 403
07:00:00 450
08:00:00 590
09:00:00 574
10:00:00 637
11:00:00 810
12:00:00 612
13:00:00 597
14:00:00 700
15:00:00 789
16:00:00 821
17:00:00 448
18:00:00 396
19:00:00 527
20:00:00 346
21:00:00 476
22:00:00 348
23:00:00 448

Statistics:
-----------
Elements processed: 106823
Elements output:    24
Execution time:     0.58 seconds</pre>
<p>You can also generate graphs straight from Log Parser (if you have the required Office Web Components installed) with slightly different syntax like this:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT QUANTIZE(TO_LOCALTIME(TO_TIMESTAMP(EXTRACT_PREFIX(TO_STRING(EXTRACT_SUFFIX([#Fields: date-time],0,'T')),0,'.'), 'hh:mm:ss')),3600) AS Hour, COUNT(*) AS [Messages per Hour] INTO HourlyTraffic.gif from *.log where (event-id='RECEIVE') GROUP BY Hour ORDER BY Hour ASC" -i:CSV -nSkipLines:4 -chartType:Column3D</pre>
<p>That Log Parser query will generate a column graph for you similar to this.</p>
<p><img class="aligncenter size-full wp-image-4766" title="Hourly Traffic Graph via Log Parser" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/HourlyTraffic1.gif" alt="" /></p>
<h2>Total Email Traffic Per Hour for Each Separate Day</h2>
<p>If you&#8217;d rather see the hourly traffic for each separate day you can use the following Log Parser query that handles the timestamps slightly differently.</p>
<pre>SELECT TO_LOCALTIME(QUANTIZE(TO_TIMESTAMP(TO_STRING(EXTRACT_PREFIX([#Fields: date-time],0,'.')), 'yyyy-MM-ddThh:mm:ss'),3600)) AS Hour,
	COUNT(*) AS Messages
FROM *.log
WHERE event-id='RECEIVE'
GROUP BY Hour
ORDER BY Hour ASC</pre>
<p>The full Log Parser command when run from the folder containing the message tracking logs is as follows:</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT TO_LOCALTIME(QUANTIZE(TO_TIMESTAMP(TO_STRING(EXTRACT_PREFIX([#Fields: date-time],0,'.')), 'yyyy-MM-ddThh:mm:ss'),3600)) AS Hour, COUNT(*) AS Messages from *.log where event-id='RECEIVE' GROUP BY Hour ORDER BY Hour ASC" -i:CSV -nSkipLines:4 -rtp:-1</pre>
<p>This will generate a lot of output depending on the amount of log retention you have configured.</p>
<pre>Hour                Messages
------------------- --------
2012-04-05 10:00:00 48
2012-04-05 11:00:00 77
2012-04-05 12:00:00 35
2012-04-05 13:00:00 74
2012-04-05 14:00:00 84
2012-04-05 15:00:00 86
2012-04-05 16:00:00 79
2012-04-05 17:00:00 35
2012-04-05 18:00:00 44
2012-04-05 19:00:00 24
2012-04-05 20:00:00 41
2012-04-05 21:00:00 19
2012-04-05 22:00:00 40
2012-04-05 23:00:00 59
2012-04-06 00:00:00 28
2012-04-06 01:00:00 42
2012-04-06 02:00:00 22
2012-04-06 03:00:00 31
2012-04-06 04:00:00 16
2012-04-06 05:00:00 31
2012-04-06 06:00:00 40
2012-04-06 07:00:00 22
2012-04-06 08:00:00 84
2012-04-06 09:00:00 77
2012-04-06 10:00:00 46
2012-04-06 11:00:00 84
....</pre>
<p>As with other Log Parser results you can output this one to a graph as well (again, providing that you have the Office Web Components installed).</p>
<p>Because of the amount of data a line graph seems more appropriate than a column graph. The default size of a graph generated by Log Parser is 640&#215;480, but you can use the <strong>-groupsize</strong> parameter to set a custom <strong>width x height</strong> that suits the amount of data being included.</p>
<pre>"C:\Program Files (x86)\Log Parser 2.2\logparser.exe" "SELECT TO_LOCALTIME(QUANTIZE(TO_TIMESTAMP(TO_STRING(EXTRACT_PREFIX([#Fields: date-time],0,'.')), 'yyyy-MM-ddThh:mm:ss'),3600)) AS Hour, COUNT(*) AS Messages INTO DailyTrafficPerHour.gif from *.log where event-id='RECEIVE' GROUP BY Hour ORDER BY Hour ASC" -i:CSV -nSkipLines:4 -chartType:Line -groupsize:1024x480</pre>
<p>&nbsp;</p>
<p><img class="aligncenter size-large wp-image-4786" title="DailyTrafficPerHour2" src="http://exchangeserverpro.com/wp-content/uploads/2012/05/DailyTrafficPerHour2-600x281.gif" alt="" width="600" height="281" /></p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/daily-email-traffic-message-tracking-log-parser" title="Calculate Daily Email Traffic using Message Tracking Logs and Log Parser">Calculate Daily Email Traffic using Message Tracking Logs and Log Parser</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-message-tracking-event-ids-log-parser" title="Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser">Reporting Exchange Server 2010 Message Tracking Event IDs with Log Parser</a></li><li><a href="http://exchangeserverpro.com/case-hub-transport-server-load-imbalance" title="The Case of the Hub Transport Server Load Imbalance">The Case of the Hub Transport Server Load Imbalance</a></li><li><a href="http://exchangeserverpro.com/generate-smtp-error-statistics-using-log-parser-and-exchange-server-2010-protocol-logs" title="Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs">Generate SMTP Error Statistics using Log Parser and Exchange Server 2010 Protocol Logs</a></li><li><a href="http://exchangeserverpro.com/exchange-2010-report-top-sender-ips-log-parser" title="Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser">Report Top Sender IP&#8217;s on Exchange Server 2010 using Log Parser</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser">Calculate Hourly Email Traffic using Message Tracking Logs and Log Parser</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/calculate-hourly-email-traffic-using-message-tracking-log-parser/feed</wfw:commentRss>
		<slash:comments>13</slash:comments>
		</item>
		<item>
		<title>How to Set Up an Automated Exchange 2010 Database Backup Alert Email</title>
		<link>http://exchangeserverpro.com/set-automated-exchange-2010-database-backup-alert-email</link>
		<comments>http://exchangeserverpro.com/set-automated-exchange-2010-database-backup-alert-email#comments</comments>
		<pubDate>Mon, 30 Apr 2012 13:11:21 +0000</pubDate>
		<dc:creator>Paul Cunningham</dc:creator>
				<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Backups]]></category>
		<category><![CDATA[Exchange 2010]]></category>
		<category><![CDATA[Mailbox Server]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[Scripting]]></category>

		<guid isPermaLink="false">http://exchangeserverpro.com/?p=4242</guid>
		<description><![CDATA[Learn how to use PowerShell to automatically monitor your Exchange Server 2010 database backups and send an alert email when recent backups have not been successful.]]></description>
			<content:encoded><![CDATA[<p>In recent articles I&#8217;ve taken you step by step through some techniques for <a href="http://exchangeserverpro.com/powershell-how-to-send-email">sending email from PowerShell scripts</a>. If you haven&#8217;t read those articles yet you can find them here:</p>
<ul>
<li><a href="http://exchangeserverpro.com/powershell-how-to-send-email">Part 1 – How to Send SMTP Email Using PowerShell</a></li>
<li><a href="http://exchangeserverpro.com/powershell-email-message-body">Part 2 - How to Add a Message Body to Emails Sent from Scripts</a></li>
<li><a href="http://exchangeserverpro.com/powershell-send-html-email">Part 3 - How to Add a HTML Message Body to Emails Sent from Scripts</a></li>
<li><a href="http://exchangeserverpro.com/powershell-html-email-formatting">Part 4 - How to Create Formatted HTML Output from Scripts</a></li>
</ul>
<p>I also shared with you a script that can be used to <a href="http://exchangeserverpro.com/powershell-script-check-exchange-2010-database-backups">check Exchange Server 2010 database backups</a> and alert you to any that have not had a recent backup.</p>
<p>Now it&#8217;s time to bring all of that information together and demonstrate how you can set up an automated database backup alert email for your <a href="http://exchangeserverpro.com">Exchange Server 2010</a> environment.</p>
<p>The two components of this are:</p>
<ul>
<li>The PowerShell script itself (we&#8217;ll use the one mentioned earlier but with some modifications to email-enable it)</li>
<li>Task Scheduler for automatically running the script each day</li>
</ul>
<h2>Script for Exchange Server 2010 Database Backup Email Alerts</h2>
<p>To email-enable the script I&#8217;ve made just a few modifications. The original script used this conditional logic to display the report in the PowerShell window.</p>
<pre>#If alert flag is true output the report
if ($alertflag -eq $true )
{
	Write-Host "The following databases have not been backed up in" $threshold "hours."
	$alerts | ft -AutoSize
}
else
{
	Write-Host "No backup alerts required."
}</pre>
<p>To change this to send an email alert we can use this code instead:</p>
<pre>#If alert flag is true send the email alert
if ($alertflag -eq $true )
{
	#HTML styles for nice formatting
        $style = "&lt;style&gt;BODY{font-family: Arial; font-size: 10pt;}"
	$style = $style + "TABLE{border: 1px solid black; border-collapse: collapse;}"
	$style = $style + "TH{border: 1px solid black; background: #CC0000; padding: 5px; color: #FFFFFF;}"
	$style = $style + "TD{border: 1px solid black; padding: 5px; }"
	$style = $style + "&lt;/style&gt;"

        #SMTP options for sending the report email
	$smtpServer = "ho-ex2010-caht1.exchangeserverpro.net"
	$smtpFrom = "reports@exchangeserverpro.net"
	$smtpTo = "administrator@exchangeserverpro.net"
	$messageSubject = "Exchange Backup Alerts"

        $intro = "The following databases have not been backed up in " + $threshold + " hours.&lt;BR&gt;&lt;BR&gt;"
	$report = $alerts | ConvertTo-Html -Fragment

	#Get ready to send email message
	$message = New-Object System.Net.Mail.MailMessage $smtpfrom, $smtpto
	$message.Subject = $messageSubject
	$message.IsBodyHTML = $true
	$message.Body = ConvertTo-Html -Body "$intro $report" -Head $style

	#Send email message
	$smtp = New-Object Net.Mail.SmtpClient($smtpServer)
	$smtp.Send($message)

}</pre>
<p>If any parts of that don&#8217;t make sense just refer to the previous tutorials on sending email with PowerShell.</p>
<p class="alert"><strong>Download the script file here:</strong> <a class="downloadlink" href="http://exchangeserverpro.com/wp-content/plugins/download-monitor/download.php?id=Get-DailyBackupAlerts.zip" title="Version 1.0 downloaded 197 times" >Get-DailyBackupAlerts.ps1</a> (downloaded 197 times so far)</p>
<p>If you&#8217;re using this script in your environment you will need to change the SMTP options to suit.</p>
<pre>
#SMTP options for sending the report email
$smtpServer = "ho-ex2010-caht1.exchangeserverpro.net"
$smtpFrom = "reports@exchangeserverpro.net"
$smtpTo = "administrator@exchangeserverpro.net"
$messageSubject = "Exchange Backup Alerts"
</pre>
<p>Save the script as <strong>Get-DailyBackupAlerts.ps1</strong> in a folder called <strong>C:\Scripts</strong> on the server where you would like it to run each day. Note that the script depends on the Exchange Server 2010 management tools, so they will also need to be installed.</p>
<h2>Using Task Scheduler to Run PowerShell Scripts</h2>
<p>Now we need to configure the scheduled task in Task Scheduler. On a Windows Server 2008 server you&#8217;ll find this in the <strong>Administrative Tools</strong>. After you&#8217;ve launched Task Scheduler click on <strong>Create Task</strong>.</p>
<p><img class="aligncenter size-full wp-image-4243" title="task-scheduler-powershell-script-01" src="http://exchangeserverpro.com/wp-content/uploads/2011/11/task-scheduler-powershell-script-01.jpg" alt="" width="305" height="290" />Give the task a meaningful name, set it to <strong>Run whether user is logged on or not</strong>, and also if necessary change the user account that it will run as (you may wish to create a special Exchange administrative account with a strong password for running these types of scripts).</p>
<p><img class="aligncenter size-full wp-image-4244" title="task-scheduler-powershell-script-02" src="http://exchangeserverpro.com/wp-content/uploads/2011/11/task-scheduler-powershell-script-02.jpg" alt="" width="590" height="439" />On the <strong>Triggers</strong> tab click new and add a <strong>Weekly</strong> trigger for each of your normal business days that you want the script to run (eg Monday &#8211; Friday). Set the <strong>Start</strong> time to suit your normal backups finishing time and your own work schedule.</p>
<p><img class="aligncenter size-full wp-image-4245" title="task-scheduler-powershell-script-03" src="http://exchangeserverpro.com/wp-content/uploads/2011/11/task-scheduler-powershell-script-03.jpg" alt="" width="556" height="439" /></p>
<p>On the <strong>Actions</strong> tab click <strong>New</strong> and add an action of Start a program. Configure the program of <strong>powershell.exe</strong> and the arguments <strong>-command &#8220;c:\scripts\get-dailybackupalerts.ps1&#8243;</strong></p>
<p><img class="aligncenter size-full wp-image-4248" title="task-scheduler-powershell-script-04" src="http://exchangeserverpro.com/wp-content/uploads/2011/11/task-scheduler-powershell-script-04.jpg" alt="" width="552" height="428" /></p>
<p>&nbsp;</p>
<p>Click <strong>OK</strong> to finish creating the new task. You will be prompted to enter the credentials for the account that you configured the task to run as.</p>
<p>Now you can test the scheduled task by right-clicking on it in the Task Scheduler Library and choosing <strong>Run</strong>.</p>
<p><img class="aligncenter size-full wp-image-4247" title="task-scheduler-powershell-script-05" src="http://exchangeserverpro.com/wp-content/uploads/2011/11/task-scheduler-powershell-script-05.jpg" alt="" width="503" height="244" />Assuming you have some databases that have not backed up recently you should receive an alert email shortly after running the scheduled task.</p>
<p><em>Note: if your backups are all up to date you can test the script by changing the <strong>$threshold</strong> variable to something very low such as <strong>1</strong>.</em></p>
<p><img class="aligncenter size-full wp-image-4249" title="exchange-2010-backup-alert-email" src="http://exchangeserverpro.com/wp-content/uploads/2011/11/exchange-2010-backup-alert-email.jpg" alt="" width="590" height="229" /></p>
<p class="alert"><strong>Download the script file here:</strong> <a class="downloadlink" href="http://exchangeserverpro.com/wp-content/plugins/download-monitor/download.php?id=Get-DailyBackupAlerts.zip" title="Version 1.0 downloaded 197 times" >Get-DailyBackupAlerts.ps1</a> (downloaded 197 times so far)</p>
<h3  class="related_post_title">Related posts:</h3><ul class="related_post"><li><a href="http://exchangeserverpro.com/powershell-script-check-exchange-2010-database-backups" title="PowerShell Script: Check Exchange 2010 Database Backups">PowerShell Script: Check Exchange 2010 Database Backups</a></li><li><a href="http://exchangeserverpro.com/powershell-script-check-exchange-mailbox-database-backup-time" title="PowerShell Script: Check Exchange Mailbox Database Last Backup Time">PowerShell Script: Check Exchange Mailbox Database Last Backup Time</a></li><li><a href="http://exchangeserverpro.com/avoid-running-transaction-log-disk-space-exchange-servers" title="Avoid Running Out of Transaction Log Disk Space on Exchange Servers">Avoid Running Out of Transaction Log Disk Space on Exchange Servers</a></li><li><a href="http://exchangeserverpro.com/test-mailflow-exchange-2003-servers" title="Using Test-Mailflow with Exchange 2003 Servers">Using Test-Mailflow with Exchange 2003 Servers</a></li><li><a href="http://exchangeserverpro.com/health-check-exchange-2010-mailbox-server" title="How to Health Check an Exchange 2010 Mailbox Server">How to Health Check an Exchange 2010 Mailbox Server</a></li></ul><hr />
<p>This article <a href="http://exchangeserverpro.com/set-automated-exchange-2010-database-backup-alert-email">How to Set Up an Automated Exchange 2010 Database Backup Alert Email</a> is © 2012 ExchangeServerPro.com</p>
<p>Get more <a href="http://exchangeserverpro.com">Exchange Server tips</a> at <a href="http://exchangeserverpro.com">ExchangeServerPro.com</a></p>]]></content:encoded>
			<wfw:commentRss>http://exchangeserverpro.com/set-automated-exchange-2010-database-backup-alert-email/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>

