Knowledge Base

Example: free disk space (Windows)

This Example will describe how to check for free disk space ie. let LazyNanny know that there is ample disk space.
Create a scheduled trigger that will check for free disk space. Lets assume you want more than '5GB' free disk space for C: your drive.

Create a powershell script with following content

#
# LazyNanny free disk space example
# Script will stop sending "I'm OK" messages to LazyNanny if not enough free disk space.
# command: powershell -ExecutionPolicy ByPass c:\lazynanny\lazynanny.ps1 <servername> <object_id> [<drive> <free space>]
#

$server=$args[0]                           <# required, servername #>
$object_id=$args[1]                        <# required, object_id  #>
$drive='C:'                                <# default drive #>
$freespace='5GB'                           <# default minimal free disk space #>

if(!$server -or !$object_id){
  echo "Missing servername and/or object_id" | Out-File $PSScriptRoot\lazynanny.log
  exit 1                                   <# missing servername and/or object_id #>
}

if($args[2]){$drive=$args[2]}              <# optional drive #>
if($args[3]){$freespace=$args[3]}          <# optional minimal free space #>

$result='Not enough free space'
try{
  if(Get-WmiObject Win32_logicaldisk|Select *|where DeviceID -eq "$drive"|where freespace -gt "$freespace"){
    $cli=New-Object System.Net.WebClient
    $result=$cli.UploadString("https://$server.lazynanny.com:15665","object_id=$object_id")
  }
}catch{
  $result=$_.ToString()
}
$result | Out-File $PSScriptRoot\lazynanny.log  <# log last result #>

Save this script as eg. c:\lazynanny\lazynanny.ps1.


Windows Task Scheduler
Create a scheduled task to run script every 5 minutes

  1. Start your Windows Command Prompt as Administrator.
    From the Windows menu search for "cmd",
    right-click on "Command Prompt" to select "Run as administrator"
    Command Prompt as Administrator.

  2. Run the command below to create a LazyNanny scheduled trigger. Do not forget to
    • change server ie. tip2027def to point to your server
    • change the object_id ie. 3348ivf3go-8016-660 with your Object ID
    • optional: change the drive name 'C:' or freespace '5GB' to your requirements
command format: powershell -ExecutionPolicy ByPass c:\lazynanny\lazynanny.ps1 <servername> <object_id> [<drive> <free space>]  
Note: <drive> and <free space> are optional.
eg.

schtasks.exe /create /tn LazyNanny /sc minute /mo 5 /ru system /tr "powershell -ExecutionPolicy ByPass c:\lazynanny\lazynanny.ps1 tip2027def 3348ivf3go-8016-660"

Command Prompt as Administrator



Every 5 minutes the LazyNanny scheduler will start sending "I'm OK" messages to your selected* LazyNanny server (eg. tip2027def.lazynanny.com). That is, as long as there is more than 5GB of free disk space. If less then the scheduler will stop sending "I'm OK" messages to your LazyNanny server. This will make LazyNanny™ nervous and it will start sending notifications to your (list of) Recipients*.



*Free products Recipients default to account email address and default server location

Please rate this article to help us improve our Knowledge Base.

0 0