Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I was wondering if there is an easy way to trigger an e-mail alert on Windows Server 2008 when any logical disk partitions become low on space. I have 2 SQL servers that have come close to running out of disk space because of the DB log files.

Thanks, Ryan

share|improve this question
1  
If you don't need to keep the full logs around for any significant period of time, set the databases with the largest logs to 'Simple' backup mode and have your maintenance plan truncate them immediately after a full backup is done. This doesn't answer your question, of course, but may help keep the drive from getting full in the first place if your situation allows it. –  Justin Scott Jan 14 '10 at 16:50
    
Thanks for the info. I did implement an extra backup job to help truncate the SQL log files and keep them from growing any larger. But I would like to put some sort of alert in place just in case. Thanks. –  rmwetmore Jan 14 '10 at 17:09
add comment

3 Answers

up vote 15 down vote accepted

One simple way to get Windows Server 2008 to send low disk space e-mail alerts is to use Task Scheduler and the System Log. If the free space falls below the percentage specified in HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\DiskSpaceThreshold, an event is recorded in the System Log that can trigger a task to send an e-mail message.

  1. Open Task Scheduler and create a new task.
  2. Enter a name for the task, select "Run whether user is logged on or not", and check "Do not store password."
  3. Add a new trigger on the Triggers tab.
  4. Select "On an event" in the "Begin the task" box.
  5. Set Log to "System", Source to "srv", and Event ID to "2013".
  6. Add a new action on the Actions tab.
  7. Set Action to "Send an e-mail" and fill in the rest of the settings appropriately.
  8. To configure when the low disk space event is recorded in the System Log, open the Registry Editor, navigate to HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters and add a DWORD value named “DiskSpaceThreshold”, setting it to the desired percentage. When the entry does not exist, the default value is 10.
share|improve this answer
3  
Does this only triggers for System drive (usually C drive) ? What if I have 2-3 driver and I want to setup alert on each of them. –  Ved Oct 26 '11 at 19:13
    
Event 2013 is logged for any partition that falls below the defined threshold - note that it is only logged once per partition, unless the disk space increases back above the threshold or the server is rebooted. support.microsoft.com/kb/112509 –  paulH Feb 4 '13 at 13:57
add comment

Why don't you run a powershell script as a schedule task every day? If the script find the free space of the disk is lower than 10%, it will send you an email or notification.

here is an example code for checking the free space of the disks:

Get-Content ForEach-Object { $; Get-WMIObject –computername $ Win32_LogicalDisk -filter "DriveType=3" | ForEach-Object { $.DeviceID; $.FreeSpace/1GB } }

share|improve this answer
add comment

I added disk space monitoring via snmp to my (separate) nagios instance.

share|improve this answer
    
We have disk monitoring as part of our general monitoring package as well, though we use IPMonitor which cheks the disks every few minutes. –  Justin Scott Jan 14 '10 at 16:56
    
Right now I'm looking into a separate monitoring system (like IPMonitor), but I would like to put something in place on the servers to alert me in the meantime. Thanks. –  rmwetmore Jan 14 '10 at 17:06
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.