scheduled tasks
4 TopicsScheduled reboot that should run every second Sunday, doesn't seem to run on the correct dates/days
As far as I know the second Sunday in August is the 14th. The job seems to have run on the 7th. Next job is scheduled to run on the 11th of September, which seems to be correct according to the "Run on the Second Sunday" trigger I've setup. Is there any good explanation why the job ran on the 7th instead of the 14th of August?684Views0likes0CommentsIs there a script to uninstall COM ports?
I would like to know if there is a script that can be used to uninstall COM port, because sometimes the port loses communication and I need to uninstall and restart the computer manually. Would it be possible to use this script in powershell with the task scheduling feature?808Views1like0CommentsPowershell Script execution using Schedule tasks
I need to go over a list of web services and query them individually and pull the details and store it into the database, I designed the code in the following way Script 1 connects to the SNOW and pulls in the list of web servcies that i need to connect and loops them through the list and triggers a "Start-ThreadJob" with the service name as an argument Scipt 2 connects to that specific web service (received as an argument) and connects to it and pull in the data and reports it to the database. When i run the script 1 manually The script 1 is successfully calling all the required web services and the data is being reported to the database, however when i try to call the script 1 using the windows schdule task, The script 1 executes but the script 2 is not being triggered. do i need to set Any specific excution policies Scope Any inputs is appreciated, Here is an example for how the script 1 and 2 looks Script 1 #Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted ############################################################################################################## #Function Name: ErrorHandler #Inputs: Error Type(Info, Warning or Error), Error String #Output: None #Description: If the error type is 'Error' then captures the last known exceptions reported and appends to the file. # If the error type is something else then the error message is appended to the log file. ############################################################################################################## Function ErrorHandler ($errType, $ErrorString) { $timestamp = Get-Date -Format o if ($errType -eq 'Error') { $errorstr = $timestamp + ' : ' + $errType + ' - ' + $ErrorString + $Error[0].Exception } else { $errorstr = $timestamp + ' : ' + $errType + ' - ' + $ErrorString } $errcounter = 0 $maxerrcounter = 5 do { try { $errorstr | Out-File $ErrFile -Append break } catch { Start-Sleep 10 $errcounter++ } }while ($errcounter -le $maxerrcounter) } ############################################################################################################## #Initialize Variable ############################################################################################################## #Key file path $CredFilePath = "E:\WIS\MonitorConfiguration\Schduled\Stage\creds\" #Error file name $ErrFile = 'C:\MonitorReportLogs\Sitescope_Config_Pull.log' $authorization = $null #SNOW API server fqdn $SnowFQDNhost = "<Server Name>" ################################### #Build Snow API authorization header ################################### $user= Get-Content $CredFilePath'SNOW_User.txt' $KeyFile = $CredFilePath+'AES.key' $key = Get-Content $KeyFile $EncryptedPW = Get-Content $CredFilePath'SNOW_Pass.txt' | ConvertTo-SecureString -Key $key $BSTR = [System.Runtime.InteropServices.Marshal]::SecureStringToBSTR($EncryptedPW) $pass = [System.Runtime.InteropServices.Marshal]::PtrToStringAuto($BSTR) $pair = "$($user):$($pass)" $encodedCreds = [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($pair)) $authorization = "Basic $encodedCreds" #SNOW API authorization Header assignment $Headers = @{ Authorization = $authorization } ################################### #Query SNOW for the list of sitescope instances ################################### $snowsysurl="https://" + $SnowFQDNhost + "/api/now/table/u_cmdb_relationship_report?sysparm_query=u_service.name=BSM SiteScope - Production&sysparm_fields=u_hardware.fqdn" try { $info=Invoke-WebRequest -Uri $snowsysurl -Headers $Headers } catch { $errStr = "SNOW Sitescope server list API request for the URL: "+ $snowsysurl +" failed - " ErrorHandler 'Error' $errStr } ################################### #Process each sitescope instance monitor data ################################### If($info -eq $null){ $errStr = "Unhandled Exception parsing data for " + $SnowFQDNhost + " exiting Script." ErrorHandler 'Error' $errStr Exit } else { #convert the JSON response to PS Custom data object dictionary $snowContent = $info | ConvertFrom-Json #Query each sitescope on the list and process the configuration data $jobCounter = 0 if (($snowContent.result.'u_hardware.fqdn' -ne $null) -and ($snowContent.result.'u_hardware.fqdn' -ne '')) { foreach($obj in $snowContent.result.'u_hardware.fqdn') { if (($obj -ne $null) -and ($obj -ne '')) { Start-ThreadJob -ScriptBlock {param($hostname) E:\WIS\MonitorConfiguration\Schduled\Stage\SIS_Config_DB_Push.ps1 $hostname}` -ArgumentList ($obj) -ThrottleLimit 10 -Name $obj $errStr = "Triggered the script for server : "+ $obj ErrorHandler 'Info' $errStr } } } else { $errStr = "SNOW Sitescope server list API request for the URL: "+ $snowsysurl +" returned 0 records." ErrorHandler 'Error' $errStr } } ################################### #Garbage Collection ################################### $info = $null $snowContent = $null Script 2: (Limited Version) #Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted ############################################################################################################## #Function Name: ErrorHandler #Inputs: Error Type(Info, Warning or Error), Error String #Output: None #Description: If the error type is 'Error' then captures the last known exceptions reported and appends to the file. # If the error type is something else then the error message is appended to the log file. ############################################################################################################## Function ErrorHandler ($errType, $ErrorString) { $timestamp = Get-Date -Format o if ($errType -eq 'Error') { $errorstr = $timestamp + ' : ' + $errType + ' - Server Name: ' + $SiSServerName + ' - ' + $ErrorString + $Error[0].Exception } else { $errorstr = $timestamp + ' : ' + $errType + ' - Server Name: ' + $SiSServerName + ' - ' + $ErrorString } $errcounter = 0 $maxerrcounter = 5 do { try { $errorstr | Out-File $ErrFile -Append break } catch { Start-Sleep 10 $errcounter++ } }while ($errcounter -le $maxerrcounter) } $obj = $args[0] #Error file name $ErrFile = 'C:\MonitorReportLogs\Sitescope_Config_Pull.log' $errStr = "Start processing data for " + $obj ErrorHandler 'Info' $errStr779Views0likes0CommentsMissing security options in Scheduled tasks
Hi all, Iām missing the option to change a task to run as another account. Screenshot from the same option in the Task Scheduler (taskschd.msc) Is this option hidden somewhere (my mistake! š) or is this a option in the roadmap? Best Regards ThomasSolved2.6KViews0likes2Comments