Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • The complete list of cmdlets is available with the command:
    • Get-Command -Module JobScheduler
  • Cmdlets come with a full name and a short alias:
    • The full name includes the term "JobScheduler" such as in
    • Use-JobSchedulerMaster
    • Use-Master
  • Should conflicts occur with existing modules then the aliases can be removed
    • Remove-Item alias:Use-Master

Cmdlets consider verbosity and debug settings.

  • This will cause verbose output to be created from cmdlets:
    • $VerbosePreference = "Continue"
  • The verbosity level is reset with:
    • $VerbosePreference = "SilentlyContinue"
  • This will cause debug output to be created from cmdlets:
    • $DebugPreference = "Continue"
  • The debug level is reset with:
    • $DebugPreference = "SilentlyContinue"

The responses from a JobScheduler Master can include large XML answers.
Such answers are stored in temporary files, the debug message indicates the file name.
The threshold for creating files is 1000 bye by default.
Consider use of the Set-MaxOutputSize cmdlet to change this value.

...

JobScheduler commands are Windows PowerShell scripts (.ps1 files), so you can run
them at the command line, or in any editor.

  • PS C:\> Use-Master scheduler111Makes the JobScheduler Master with ID "scheduler111" available for use with cmdlets.
    • PS C:\>
    Show
    • Use-
    Status
    • Master scheduler111Shows
  • Show the summary information of a JobScheduler Master.
    • PS C:\> Show-Status
  • Show (Get-Task).countShows the number of tasks that are currently running.
    • PS C:\> (Get-Task).count
  • Stop | Stop-TaskStops all running tasks (emergency stop).
    • PS C:\>
    $orders =
    • Get-Task | Stop-Task
  • Collect -Order /sosCollects the list of orders from a directory and stores it in a variable.
    • PS C:\> $orders = Get-Order /sos

For more information about JobScheduler cmdlets, type: Get-Help Use-Master, Get-Help Show-Status etc.

...

  • Perform an emergency stop:
    • Get-Task | Stop-Task -Action kill
    • This will terminate all running and enqueued tasks immediately.
  • Find enqueued tasks, i.e. tasks that are scheduled for a later start:
    • Get-Task -NoRunningTasks
    • Retrieves the list of scheduled tasks.
  • Suspend any temporary orders that are e.g. created by job scripts:
    • $orders = ( Get-Order /my_jobs -NoPermanent | Suspend-Order )
    • This will retrieve temporary ad hoc orders from the "my_jobs" directory and any subfolders.
    • All temporary orders are suspended and the list of order objects is stored in a variable.
  • Remove orders from a list that have previously been retrieved
    • $orders | Remove-Order
    • This will remove the orders available from the list.

MANAGING THE JobScheduler MASTER

Find some use cases for JobScheduler Master management.

  • Start the JobScheduler Master:
    • Start-Master -Service
    • Starts the Windows service of a JobScheduler Master
  • Start the JobScheduler Master in paused mode:
    • Start-Master -Service -Pause
    • The Windows service is started and immediately paused to prevent any tasks from starting.
  • Restart the JobScheduler Master:
    • Restart-Master -Timeout 120
    • Restarts the Master having left any running tasks up to 120 seconds to complete.
  • Stop the JobScheduler Master immediately:
    • Stop-Master -Action kill
    • This will kill all running tasks immediately and terminate the JobScheduler Master.
  • Stop the JobScheduler Master cluster:
    • Stop-Master -Cluster -Action abort
  • Install the JobScheduler Master Windows service:
    • Install-Service -Start -PauseAfterFailure
    • Installs and starts the Windows service. Should a previous JobScheduler

...

    • run have been terminated with failure then JobScheduler Master will switch to pause mode.
    • This allows e.g. to check for enqueued tasks before starting operations.
    • A previously installed Windows service with the same name will be removed.
  • Install the JobScheduler Master Windows service for a specific account:
    • Install-Service -Start -UseCredentials
    • This will install the service and ask for the name of the account and

...

    • password that the service is operated for. The account name typically includes

...

    • the domain and user, e.g. .\some_user for "some_user" in the current domain.
  • Remove the JobScheduler Master Windows service:
    • Remove-Service
    • This will remove the Windows service. Should any tasks be running with

...

    • the JobScheduler Master then the removal will be delayed. 
    • Consider to

...

    • use Stop-Master -Action

...

    • abort if immediate removal of the Windows service is required.

SEE ALSO

JobScheduler wiki: https://kb.sos-berlin.com/display/PKB/cmdlets: PowerShell CLI - Cmdlets - about_JobScheduler
Get-Calendar
Get-Job
Get-JobChain
Get-Order
Get-Status
Get-Task
Get-Version
Install-Service
Remove-Order
Remove-Service
Reset-Order
Restart-Master
Resume-Master
Resume-Order
Send-Command
Set-MaxOutputSize
Show-Calendar
Show-Status
Start-Master
Start-Job
Start-Order
Stop-Job
Stop-Master
Stop-Task
Suspend-Master
Suspend-Order
Update-Job
Update-Order
Use-Master