呼び出されたプログラムが例外をスローした場合、Windowsタスクは実行を続けますか?

ビットシフト

そのため、オンデマンドで実行するスケジュールされたタスクがあります。

エラーが発生した場合にタスクを強制的に終了させる方法はありますか?

正常に実行されると、ステータスが自動的に更新されないため、手動で更新する必要があります。ただし、呼び出されたプログラムが例外をスローすると、タスクは実行状態のままになります。単に停止して例外をログに記録したいようです。

私のPowerShellスクリプトでは、開発サーバーでWebAPIメソッドを呼び出しています。このような。例外処理は、Web API自体ではなく、Webリクエストを呼び出すスクリプトの問題をキャプチャしようとしているだけであることに注意してください。Webアプリには、独自の例外処理とロギングがあります。

try {
    $order_api = "http://dev-server.testserver.com/api/orderpipeline/Runfolder";
    $order_response = Invoke-WebRequest -Uri $order_api -UseDefaultCredentials -ContentType "application/json" -Method Post -Body $jsonParams -TimeoutSec 10000;
}
catch{
        # Capture exception detail 
        $err_message =  $_.Exception | format-list -force | Out-String;     
        $log_message = $PSCommandPath + "`r`n" + " Something went wrong trying to invoke web request api, exception follows: " +  "`r`n" + $err_message;

        # Write to application event log
        New-EventLog –LogName Application –Source “Order pipeline Script”
        Write-EventLog –LogName Application –Source “Order pipeline Script” –EntryType Error –EventID 1  –Message $log_message
}}

Webアプリ内で例外をログに記録しているので、例外があると、タスクがまだ実行中であることに気付き、強制的に停止する必要がありました。これは、私が本番システムで本当にやりたいことではありません。

呼び出されたプログラムで例外が発生した場合、どうすればタスクを強制的に停止できますか?

私がPowerShellスクリプト内で行っていることの1つは、tryを使用することです。

IT凶悪犯忍者

呼び出されたプログラムで例外が発生した場合、どうすればタスクを強制的に停止できますか?

質問で提供したロジックに基づいて、Catchブロック内にBreakを配置するだけで、例外がスローされたときにスクリプトの実行を停止するように指示できます。

構文例

try 
{
    $order_api = "http://dev-server.testserver.com/api/orderpipeline/Runfolder";
    $order_response = Invoke-WebRequest -Uri $order_api -UseDefaultCredentials -ContentType "application/json" -Method Post -Body $jsonParams -TimeoutSec 10000;
}
catch
{
    # Capture exception detail 
    $err_message =  $_.Exception | format-list -force | Out-String;     
    $log_message = $PSCommandPath + "`r`n" + " Something went wrong trying to invoke web request api, exception follows: " +  "`r`n" + $err_message;

    # Write to application event log
    New-EventLog –LogName Application –Source “Order pipeline Script”
    Write-EventLog –LogName Application –Source “Order pipeline Script” –EntryType Error –EventID 1  –Message $log_message
    break
}

その他のリソース

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Java Timerクラス:いずれかのタスクで例外がスローされた場合、タイマータスクは実行を停止します

分類Dev

関数の呼び出しで例外がスローされた場合に処理を続行するにはどうすればよいですか?

分類Dev

サービスからプログラムで呼び出された場合、Powerpointはサウンドをエクスポートしません

分類Dev

例外がキャッチされましたが、プログラムは実行を続けています

分類Dev

すべてのlatch.countdown()が呼び出されても、プログラムは実行を続けます

分類Dev

node.jsスクリプト内でwineを介して実行するために呼び出されたプログラムがフリーズする

分類Dev

特定のプログラムから呼び出された場合にスクリプトがstdoutを生成しないようにする

分類Dev

例外をスローする前にCatch句で呼び出された場合、JPAリポジトリは更新を実行しません

分類Dev

Javaプログラムから呼び出されたWindowsコマンドプロンプトを使用して、複数の連続したスペースを含む文字列をパラメータとしてjarファイルに渡します。

分類Dev

syscallがユーザースペースプログラムによって呼び出された場合、実行はどのようにカーネルスペースに転送されますか?

分類Dev

コントローラクラスの外部から呼び出されたgridpane.getchildren()。add()は、プログラムをブロックします

分類Dev

コンストラクターが例外をスローした場合、try-with-resourcesイディオムのcloseメソッドは呼び出されませんか?

分類Dev

コンストラクターが例外をスローした場合、try-with-resourcesイディオムのcloseメソッドは呼び出されませんか?

分類Dev

スレッドプールのサイズが実行されたタスクの数よりも小さい場合、newFixedThreadPoolを使用するマルチスレッドプログラムが例外として実行されない

分類Dev

cronは、Pythonプログラムを実行するために「script」を呼び出すbashスクリプトを呼び出します。スクリプト/ Pythonが完了する前に、bashスクリプトの次の行がすぐに実行されます

分類Dev

cronは、Pythonプログラムを実行するために「script」を呼び出すbashスクリプトを呼び出します。スクリプト/ Pythonが完了する前に、bashスクリプトの次の行がすぐに実行されます

分類Dev

プログラムは、実行されるたびに同じCPUレジスタを使用しますか?

分類Dev

Groovyメタプログラミング(getProperty)は、クラスの外部から呼び出された場合にのみ機能しますか?

分類Dev

Cygwinで実行されたプログラムは、スローされた例外を報告しません

分類Dev

モニターがtmuxでトリガーされたときにスクリプトまたはプログラムを実行しますか?

分類Dev

コンストラクターで例外がスローされました:デストラクタは呼び出されますか?

分類Dev

例外がスローされた後、Javaプログラムの実行を継続するにはどうすればよいですか?

分類Dev

MediaDevices.getUserMediaは、ZoomまたはMSTeamsデスクトップクライアントが実行されている場合(カメラがオンの場合)、Windowsで例外をスローします

分類Dev

ターミナルから直接呼び出された場合は実行可能ファイルが起動しますが、シェルスクリプトから呼び出された場合は機能しません

分類Dev

フォークする前にプロセスにカスタムシグナルハンドラーを登録した場合、後続の子プロセスにもカスタムシグナルハンドラーが登録されますか?

分類Dev

プログラムは、sudoで呼び出された場合にのみUSB経由で接続します

分類Dev

HttpUrlConnectionは、呼び出されたJavaプログラムによってスローされた例外を表示しません

分類Dev

'task.IsCompleted'内で呼び出されたUnity関数はプログラムの続行を停止します

分類Dev

カスタムセルを使用した私のCollectionViewは、最初にコンパイル/実行した場合でも、プログラムをクラッシュさせ続けます

Related 関連記事

  1. 1

    Java Timerクラス:いずれかのタスクで例外がスローされた場合、タイマータスクは実行を停止します

  2. 2

    関数の呼び出しで例外がスローされた場合に処理を続行するにはどうすればよいですか?

  3. 3

    サービスからプログラムで呼び出された場合、Powerpointはサウンドをエクスポートしません

  4. 4

    例外がキャッチされましたが、プログラムは実行を続けています

  5. 5

    すべてのlatch.countdown()が呼び出されても、プログラムは実行を続けます

  6. 6

    node.jsスクリプト内でwineを介して実行するために呼び出されたプログラムがフリーズする

  7. 7

    特定のプログラムから呼び出された場合にスクリプトがstdoutを生成しないようにする

  8. 8

    例外をスローする前にCatch句で呼び出された場合、JPAリポジトリは更新を実行しません

  9. 9

    Javaプログラムから呼び出されたWindowsコマンドプロンプトを使用して、複数の連続したスペースを含む文字列をパラメータとしてjarファイルに渡します。

  10. 10

    syscallがユーザースペースプログラムによって呼び出された場合、実行はどのようにカーネルスペースに転送されますか?

  11. 11

    コントローラクラスの外部から呼び出されたgridpane.getchildren()。add()は、プログラムをブロックします

  12. 12

    コンストラクターが例外をスローした場合、try-with-resourcesイディオムのcloseメソッドは呼び出されませんか?

  13. 13

    コンストラクターが例外をスローした場合、try-with-resourcesイディオムのcloseメソッドは呼び出されませんか?

  14. 14

    スレッドプールのサイズが実行されたタスクの数よりも小さい場合、newFixedThreadPoolを使用するマルチスレッドプログラムが例外として実行されない

  15. 15

    cronは、Pythonプログラムを実行するために「script」を呼び出すbashスクリプトを呼び出します。スクリプト/ Pythonが完了する前に、bashスクリプトの次の行がすぐに実行されます

  16. 16

    cronは、Pythonプログラムを実行するために「script」を呼び出すbashスクリプトを呼び出します。スクリプト/ Pythonが完了する前に、bashスクリプトの次の行がすぐに実行されます

  17. 17

    プログラムは、実行されるたびに同じCPUレジスタを使用しますか?

  18. 18

    Groovyメタプログラミング(getProperty)は、クラスの外部から呼び出された場合にのみ機能しますか?

  19. 19

    Cygwinで実行されたプログラムは、スローされた例外を報告しません

  20. 20

    モニターがtmuxでトリガーされたときにスクリプトまたはプログラムを実行しますか?

  21. 21

    コンストラクターで例外がスローされました:デストラクタは呼び出されますか?

  22. 22

    例外がスローされた後、Javaプログラムの実行を継続するにはどうすればよいですか?

  23. 23

    MediaDevices.getUserMediaは、ZoomまたはMSTeamsデスクトップクライアントが実行されている場合(カメラがオンの場合)、Windowsで例外をスローします

  24. 24

    ターミナルから直接呼び出された場合は実行可能ファイルが起動しますが、シェルスクリプトから呼び出された場合は機能しません

  25. 25

    フォークする前にプロセスにカスタムシグナルハンドラーを登録した場合、後続の子プロセスにもカスタムシグナルハンドラーが登録されますか?

  26. 26

    プログラムは、sudoで呼び出された場合にのみUSB経由で接続します

  27. 27

    HttpUrlConnectionは、呼び出されたJavaプログラムによってスローされた例外を表示しません

  28. 28

    'task.IsCompleted'内で呼び出されたUnity関数はプログラムの続行を停止します

  29. 29

    カスタムセルを使用した私のCollectionViewは、最初にコンパイル/実行した場合でも、プログラムをクラッシュさせ続けます

ホットタグ

アーカイブ