<p>I am working on a windows service that polls for a connection to a network enabled devices every 15 seconds.  If the service is not able to connect to a device, it throws an exception and tries again in 15 seconds.  All of this works great.</p>

<p>But, lets say one of the devices is down for a day or more.  I am filling up my exception log with the same exception every 15 seconds.  Is there a standard way to prevent an exception from being written to the event log if the exception being thrown hasn't changed in the last x number of hours?</p>

Maybe have a workflow that if the polls fails for a certain number of times, the polling interval is increased. e.g. polls every 15 seconds for like 3 times, if it fails then increase the polling interval to one minute, if it fails for n times then increase the time to one hour.
To be honest the workflow above doesnt really solve your problem. If I were you, I would reverse the workflow. Instead of the server polling for devices, why not do it the other way round? When a device connected to a networked machine, your client side service sends a message to the server, so that the server knows that the device is connected and alive.
Hope this helps...
RWendi