Dela via


Självstudie: Skapa ett schemalagt webbjobb

WebJobs är en funktion i Служба приложений Azure som gör att du kan köra ett program eller skript i samma instans som en webbapp. Alla App Service-planer stöder webbjobb utan extra kostnad. Den här självstudien vägleder dig genom att skapa ett schemalagt (utlöst) webbjobb med hjälp av din föredragna utvecklingsstack.

Förutsättningar

  • Ett Azure-konto med en aktiv prenumeration. Skapa ett konto kostnadsfritt.
  • En befintlig App Service .NET 9 app.
  • Alltid på måste vara aktiverat i din app.
  • För Windows-containrar och alla Linux-appar kontrollerar du att appinställningen WEBSITE_SKIP_RUNNING_KUDUAGENT är inställd på false.

Förbereda webbjobbet lokalt

  1. I det här steget skapar du ett grundläggande .NET WebJob-projekt och navigerar till projektroten.

    dotnet new console -n webjob –framework net9.0
    
    cd webjob
    
  2. Ersätt Program.cs sedan till följande kod som skriver den aktuella tiden till konsolen:

    using System; 
    
    class Program 
    { 
        static void Main() 
        { 
            DateTimeOffset now = DateTimeOffset.Now; 
            Console.WriteLine("Current time with is: " + now.ToString("hh:mm:ss tt zzz")); 
        } 
    }
    
  3. Från webjob-katalogen kör du webjob för att bekräfta att den aktuella tiden matas ut till konsolen:

    dotnet run
    

    Du bör se utdata som liknar följande:

    Current time with is: 07:53:07 PM -05:00
    
  4. När du har bekräftat att appen fungerar skapar du den och navigerar till den överordnade katalogen:

    dotnet publish -c Release -r win-x64 --self-contained true /p:PublishSingleFile=true
    
  5. (Endast Linux) I projektroten skapar du en run.sh med följande kod för att köra den inbyggda körbara filen:

    #!/bin/bash
    
    ./webjob
    
  6. Paketera nu filerna i en .zip enligt följande kommando:

    zip -j webjob.zip bin/Release/net9.0/win-x64/publish/webjob.exe
    

Skapa ett schemalagt webbjobb i Azure

  1. I Azure Portal går du till App Service sidan i din App Service app.

  2. I den vänstra rutan väljer du WebJobs och sedan Lägg till.

    Skärmbild som visar hur du lägger till ett webbjobb i en App Service-app i portalen (schemalagt webbjobb).

  3. Fyll i inställningarna för Lägg till webbjobb enligt tabellen och välj sedan Skapa webbjobb. För Filuppladdning måste du välja den .zip filen som du skapade eller laddade ned tidigare.

    Skärmbild som visar hur du konfigurerar ett schemalagt webbjobb i en App Service-app.

    Inställning värde Beskrivning
    Namn webbjobb Webbjobbets namn Måste börja med en bokstav eller en siffra och får inte innehålla andra specialtecken än "-" och "_".
    Filuppladdning webjob.zip Den .zip filen som innehåller din körbara- eller skriptfil. De filtyper som stöds visas i avsnittet filtyper som stöds .
    Typ Aktiverad Ange när webbjobbet körs: kontinuerlig eller utlöst.
    Utlösare Schemalagd Schemalagd eller manuell. Se till att Alltid på är aktiverat för att schemat ska fungera tillförlitligt.
    CRON-uttryck 0 0/1 * * * * I den här snabbstarten använder vi ett schema som körs varje minut. Se CRON-uttryck om du vill veta mer om syntaxen.
  4. Det nya webbjobbet visas på sidan Webbjobb . Om du ser ett meddelande om att webbjobbet har lagts till, men du inte ser det, väljer du Uppdatera.

  5. Det schemalagda webbjobbet körs enligt det schema som definieras av CRON-uttrycket.

    Skärmbild som visar hur du kör ett manuellt schemalagt webbjobb i Azure Portal.

WebJobs är en funktion i Служба приложений Azure som gör att du kan köra ett program eller skript i samma instans som en webbapp. Alla App Service-planer har stöd för webbjobb utan extra kostnad. I det här exemplet används ett schemalagt (utlöst) webbjobb för att mata ut systemtiden en gång i minuten.

Förutsättningar

Förbereda exempelwebbjobbet

  1. Ladda ned det fördefinierade exempelprojektet för att komma igång snabbt. Exemplet innehåller filen webjob.py, som matar ut aktuell tid till konsolen enligt nedan:

    import datetime 
    
    current_datetime = datetime.datetime.now() 
    print(current_datetime) # Output: 2025-03-27 10:27:21.240752
    
  2. Extrahera den nedladdade zip-filen och skapa sedan en ny zip-fil som endast innehåller filen (utan någon överordnad webjob.py katalog). WebJobs kräver att den körbara filen eller skriptet finns i zip-filens rot.

Skapa ett schemalagt webbjobb

  1. I Azure Portal går du till App Service sidan i din App Service app.

  2. I den vänstra rutan väljer du WebJobs och sedan Lägg till.

    Skärmbild som visar hur du lägger till ett webbjobb i en App Service-app i portalen (schemalagt webbjobb).

  3. Fyll i inställningarna för Lägg till webbjobb enligt tabellen och välj sedan Skapa webbjobb. För Filuppladdning måste du välja den .zip fil som du skapade tidigare i avsnittet Förbered exempelwebbjobbet .

    Skärmbild som visar hur du konfigurerar ett schemalagt webbjobb i en App Service-app.

    Inställning värde Description
    Namn webbjobb Webbjobbets namn Måste börja med en bokstav eller en siffra och får inte innehålla andra specialtecken än "-" och "_".
    Filuppladdning webjob.zip Den .zip fil som innehåller webjob.py på rotnivå. De filtyper som stöds visas i avsnittet filtyper som stöds .
    Typ Aktiverad Ange när webbjobbet körs: kontinuerlig eller utlöst.
    Utlösare Schemalagd Schemalagd eller manuell. Se till att Alltid på är aktiverat för att schemat ska fungera tillförlitligt.
    CRON-uttryck 0 0/1 * * * * I den här snabbstarten använder vi ett schema som körs varje minut. Se CRON-uttryck om du vill veta mer om syntaxen.
  4. Det nya webbjobbet visas på sidan Webbjobb . Om du ser ett meddelande om att webbjobbet har lagts till, men du inte ser det, väljer du Uppdatera.

  5. Det schemalagda webbjobbet körs enligt det schema som definieras av CRON-uttrycket.

    Skärmbild som visar hur du kör ett manuellt schemalagt webbjobb i Azure Portal.

WebJobs är en funktion i Служба приложений Azure som gör att du kan köra ett program eller skript i samma instans som en webbapp. Alla App Service-planer har stöd för webbjobb utan extra kostnad. I det här exemplet används ett schemalagt (utlöst) webbjobb för att mata ut systemtiden en gång i minuten.

Förutsättningar

  • Ett Azure-konto med en aktiv prenumeration. Skapa ett konto kostnadsfritt.
  • En befintlig App-service Node-app.
  • Alltid på måste vara aktiverat i din app.
  • För Linux kontrollerar du att appinställningen WEBSITE_SKIP_RUNNING_KUDUAGENT är inställd på false.

Förbereda exempelwebbjobbet

  1. Ladda ned det fördefinierade exempelprojektet för att komma igång snabbt. Exemplet innehåller en JavaScript-fil webjob.jssom matar ut aktuell tid till konsolen enligt nedan:

    // Import the 'Date' object from JavaScript
    const currentTime = new Date();
    
    // Format the time as a string
    const formattedTime = currentTime.toLocaleTimeString();
    
    // Output the formatted time to the console
    console.log(`Current system time is: ${formattedTime}`);
    
  2. Extrahera den nedladdade zip-filen och skapa sedan en ny zip-fil som endast innehåller filen (utan någon överordnad webjob.js katalog). WebJobs kräver att den körbara filen eller skriptet finns i zip-filens rot.

Skapa ett schemalagt webbjobb

  1. I Azure Portal går du till App Service sidan i din App Service app.

  2. I den vänstra rutan väljer du WebJobs och sedan Lägg till.

    Skärmbild som visar hur du lägger till ett webbjobb i en App Service-app i portalen (schemalagt webbjobb).

  3. Fyll i inställningarna för Lägg till webbjobb enligt tabellen och välj sedan Skapa webbjobb. För Filuppladdning måste du välja den .zip fil som du skapade tidigare i avsnittet Förbered exempelwebbjobbet .

    Skärmbild som visar hur du konfigurerar ett schemalagt webbjobb i en App Service-app.

    Inställning värde Description
    Namn webbjobb Webbjobbets namn Måste börja med en bokstav eller en siffra och får inte innehålla andra specialtecken än "-" och "_".
    Filuppladdning webjob.zip Den .zip fil som innehåller webjob.js på rotnivå. De filtyper som stöds visas i avsnittet filtyper som stöds .
    Typ Aktiverad Ange när webbjobbet körs: kontinuerlig eller utlöst.
    Utlösare Schemalagd Schemalagd eller manuell. Se till att Alltid på är aktiverat för att schemat ska fungera tillförlitligt.
    CRON-uttryck 0 0/1 * * * * I den här snabbstarten använder vi ett schema som körs varje minut. Se CRON-uttryck om du vill veta mer om syntaxen.
  4. Det nya webbjobbet visas på sidan Webbjobb . Om du ser ett meddelande om att webbjobbet har lagts till, men du inte ser det, väljer du Uppdatera.

  5. Det schemalagda webbjobbet körs enligt det schema som definieras av CRON-uttrycket.

    Skärmbild som visar hur du kör ett manuellt schemalagt webbjobb i Azure Portal.

WebJobs är en funktion i Служба приложений Azure som gör att du kan köra ett program eller skript i samma instans som en webbapp. Alla App Service-planer har stöd för webbjobb utan extra kostnad. I det här exemplet används ett schemalagt (utlöst) webbjobb för att mata ut systemtiden en gång i minuten.

Viktigt!

WebJobs stöds inte i anpassade Linux-containrar baserat på Alpine Linux, inklusive Linux-appar som använder Java 8- och Java 11-körningsstackar. Från och med Java 17 Linux-appar använder Azure App Service icke-alpine-baserade avbildningar, som är kompatibla med WebJobs.

Förutsättningar

Förbered webbjobbet

  1. Ladda ned java-exempelwebbjobbet. Du skapar en .JAR fil med Maven. Java-projektet som finns på project/src/main/java/webjob/HelloWorld.java skickar ett meddelande och den aktuella tiden till konsolen.

    import java.time.LocalDateTime; 
    
    public class HelloWorld { 
    
        public static void main(String[] args) { 
    
            System.out.println("------------------------------------------------------------"); 
            System.out.println("Hello World from WebJob: " + LocalDateTime.now()); 
            System.out.println("------------------------------------------------------------"); 
        } 
    } 
    
  2. Skapa och paketera Java-projektet för att skapa den körbara filen .jar genom att köra följande kommandon från project/ katalogen:

    mvn install 
    mvn package 
    

    Jar-filerna kommer att finnas på project/target/webjob-artifact-1.0.0.jar efter en lyckad kompilering.

  3. Paketera project/target/webjob-artifact-1.0.0.jar som en .zip fil.

    zip webjob.zip project/target/webjob-artifact-1.0.0.jar
    

Skapa ett schemalagt webbjobb i Azure

  1. I Azure Portal går du till App Service sidan i din App Service app.

  2. I den vänstra rutan väljer du WebJobs och sedan Lägg till.

    Skärmbild som visar hur du lägger till ett webbjobb i en App Service-app i portalen (schemalagt webbjobb).

  3. Fyll i inställningarna för Lägg till webbjobb enligt tabellen och välj sedan Skapa webbjobb. För Filuppladdning måste du välja den .zip fil som du skapade i föregående avsnitt.

    Skärmbild som visar hur du konfigurerar ett schemalagt webbjobb i en App Service-app.

    Inställning värde Beskrivning
    Namn webbjobb Webbjobbets namn Måste börja med en bokstav eller en siffra och får inte innehålla andra specialtecken än "-" och "_".
    Filuppladdning webjob.zip Den .zip fil som innehåller webjob-artifact-1.0.0.jar. De filtyper som stöds visas i avsnittet filtyper som stöds .
    Typ Aktiverad Ange när webbjobbet körs: kontinuerlig eller utlöst.
    Utlösare Schemalagd Schemalagd eller manuell. Se till att Alltid på är aktiverat för att schemat ska fungera tillförlitligt.
    CRON-uttryck 0 0/1 * * * * I den här snabbstarten använder vi ett schema som körs varje minut. Se CRON-uttryck om du vill veta mer om syntaxen.
  4. Det nya webbjobbet visas på sidan Webbjobb . Om du ser ett meddelande om att webbjobbet har lagts till, men du inte ser det, väljer du Uppdatera.

  5. Det schemalagda webbjobbet körs enligt det schema som definieras av CRON-uttrycket.

    Skärmbild som visar hur du kör ett manuellt schemalagt webbjobb i Azure Portal.

WebJobs är en funktion i Служба приложений Azure som gör att du kan köra ett program eller skript i samma instans som en webbapp. Alla App Service-planer har stöd för webbjobb utan extra kostnad. I det här exemplet används ett schemalagt (utlöst) webbjobb för att mata ut systemtiden en gång i minuten.

Förutsättningar

  • Ett Azure-konto med en aktiv prenumeration. Skapa ett konto kostnadsfritt.
  • En befintlig App Service PHP-app på Linux. I den här snabbstarten används en PHP-app .
  • Alltid på måste vara aktiverat i din app.
  • Kontrollera att appinställningen WEBSITE_SKIP_RUNNING_KUDUAGENT är inställd på false.

Förbereda exempelwebbjobbet

  1. Ladda ned det fördefinierade exempelprojektet för att komma igång snabbt. Exemplet innehåller PHP-filen webjob.php, som matar ut aktuell tid till konsolen enligt nedan:

    <?php
    // Get the current time
    $current_time = date("Y-m-d H:i:s");
    
    // Display the current time
    echo "The current time is: " . $current_time;
    ?>
    
  2. Extrahera den nedladdade zip-filen och skapa sedan en ny zip-fil som endast innehåller filen (utan någon överordnad webjob.php katalog). WebJobs kräver att den körbara filen eller skriptet finns i zip-filens rot.

Skapa ett schemalagt webbjobb

  1. I Azure Portal går du till App Service sidan i din App Service app.

  2. I den vänstra rutan väljer du WebJobs och sedan Lägg till.

    Skärmbild som visar hur du lägger till ett webbjobb i en App Service-app i portalen (schemalagt webbjobb).

  3. Fyll i inställningarna för Lägg till webbjobb enligt tabellen och välj sedan Skapa webbjobb. För Filuppladdning måste du välja den .zip fil som du skapade tidigare i avsnittet Förbered exempelwebbjobbet .

    Skärmbild som visar hur du konfigurerar ett schemalagt webbjobb i en App Service-app.

    Inställning värde Description
    Namn webbjobb Webbjobbets namn Måste börja med en bokstav eller en siffra och får inte innehålla andra specialtecken än "-" och "_".
    Filuppladdning webjob.zip Den .zip fil som innehåller webjob.php på rotnivå. De filtyper som stöds visas i avsnittet filtyper som stöds .
    Typ Aktiverad Ange när webbjobbet körs: kontinuerlig eller utlöst.
    Utlösare Schemalagd Schemalagd eller manuell. Se till att Alltid på är aktiverat för att schemat ska fungera tillförlitligt.
    CRON-uttryck 0 0/1 * * * * I den här snabbstarten använder vi ett schema som körs varje minut. Se CRON-uttryck om du vill veta mer om syntaxen.
  4. Det nya webbjobbet visas på sidan Webbjobb . Om du ser ett meddelande om att webbjobbet har lagts till, men du inte ser det, väljer du Uppdatera.

  5. Det schemalagda webbjobbet körs enligt det schema som definieras av CRON-uttrycket.

    Skärmbild som visar hur du kör ett manuellt schemalagt webbjobb i Azure Portal.

Anmärkning

Standardtidszonen som används för att köra CRON-uttryck är Coordinated Universal Time (UTC). Om du vill att CRON-uttrycket ska köras baserat på en annan tidszon skapar du en appinställning för funktionsappen med namnet WEBSITE_TIME_ZONE. Mer information finns i NCRONTAB-tidszoner.

Granska webbjobbsloggarna

Välj loggen för det webbjobb som du skapade tidigare.

En skärmbild som visar hur du kan visa webbjobbsloggar i en App Service-app i portalen (schemalagt WebJob).

Utdata bör se ut ungefär så här.

Skärmbild som visar WebJobs-loggutdata.

Städa upp

Om du vill ta bort webbjobbet väljer du webbjobbet i portalen och väljer Delete.

Skärmbild som visar hur du kan ta bort ett webbjobb i portalen.

Nästa steg

Utforska mer avancerade webbjobbsscenarier, inklusive utlösare och distributionsalternativ