Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
VZTAHUJE SE NA:
Azure Data Factory
Azure Synapse Analytics
Návod
Vyzkoušejte si službu Data Factory v Microsoft Fabric, řešení pro analýzy typu all-in-one pro podniky. Microsoft Fabric zahrnuje vše od přesunu dat až po datovou vědu, analýzy v reálném čase, podnikovou inteligenci a reportování. Přečtěte si, jak začít používat novou zkušební verzi zdarma.
Tento článek obsahuje informace o aktivační události plánu a krocích pro vytvoření, spuštění a sledování spouštěče plánu. Další typy spouštěčů najdete v tématu Spuštění kanálu a triggery.
Při vytváření spouštěče plánu určíte plán, jako je počáteční datum, opakování nebo koncové datum spouštěče, a přidružíte jej ke kanálu. Mezi kanalizacemi a triggery existuje mnoho-na-mnoho vztah. Více spouštěčů může zahájit jeden pipeline. Jediný spouštěč může zahájit více pracovních toků.
Následující části obsahují postup vytvoření spouštěče plánu různými způsoby.
Prostředí uživatelského portálu Azure Data Factory a Azure Synapse
Můžete vytvořit aktivační událost plánu, která naplánuje pravidelné spouštění kanálu, například každou hodinu nebo denně.
Poznámka:
Úplný návod k vytvoření kanálu a triggeru plánu, který přidruží spouštěč ke kanálu a spustí a monitoruje kanál, najdete v tématu Rychlý start: Vytvoření datové továrny pomocí uživatelského rozhraní služby Data Factory.
Přepněte na kartu Upravit ve službě Data Factory nebo na kartu Integrace v Azure Synapse.
V nabídce vyberte možnost Spouštěč a poté vyberte možnost Nový/Upravit.
Na stránce Přidat spouštěcí události vyberte Zvolit spouštěcí událost a pak vyberte Nový.
Na stránce Nová aktivační událost :
Zkontrolujte, zda je v nabídce Typ vybrána možnost Plán.
Zadejte počáteční datum a čas spouštěče pro Počáteční datum. Ve výchozím nastavení je nastaveno na aktuální datum a čas v koordinovaném světovém čase (UTC).
Zadejte časové pásmo, ve kterém je spouštěcí událost vytvořena. Nastavení časového pásma se vztahuje na Počáteční datum, Koncové datum a Časy spuštění plánu v rozšířených možnostech opakování. Změna nastavení časového pásma nezmění automaticky datum zahájení. Ujistěte se, že je počáteční datum správné v zadaném časovém pásmu. Plánovaný čas spuštění spouštěče se považuje za datum zahájení. (Ujistěte se, že počáteční datum je alespoň o 1 minutu kratší než doba spuštění, jinak se kanál aktivuje při dalším opakování.)
Poznámka:
Pro časová pásma s úsporou denního světla se čas spuštění automaticky upraví pro změnu dvakrát ročně, pokud je opakování nastaveno na Dny nebo vyšší. Chcete-li se vyhnout změně letního času, vyberte časové pásmo, které letní čas nepoužívá, například UTC.
Úprava letního času probíhá pouze u spouštěče s opakováním nastaveným na hodnotu Dny nebo vyšší. Pokud je spouštěč nastaven na frekvenci hodin nebo minut , bude se spouštět v pravidelných intervalech.
Zadejte Opakování spouštěcí události. Vyberte jednu z hodnot z rozevíracího seznamu (Každou minutu, Každou hodinu, Denně, Týdně nebo Měsíčně). Do textového pole zadejte násobitel. Pokud například chcete, aby se spouštěč spouštěl jednou za každých 15 minut, vyberte možnost Každou minutu a do textového pole zadejte hodnotu 15 .
Pokud v části Opakování vyberete z rozevíracího seznamu možnost Dny, Týdny nebo Měsíce, zobrazí se Rozšířené možnosti opakování.
Chcete-li zadat koncové datum a čas, vyberte možnost Zadat koncové datum. Určete informace Konce na a pak vyberte OK.
Ke každému spuštění kanálu jsou přidruženy náklady. Pokud testujete, možná budete chtít zajistit, aby se kanál aktivoval jenom několikrát. Ujistěte se ale, že mezi časem publikování a koncovým časem je dostatek času na spuštění kanálu. Spouštěč se projeví až po publikování řešení, nikoli po uložení spouštěče v uživatelském rozhraní.
V okně Nová aktivační událost vyberte v možnosti Aktivovánomožnost Ano a poté vyberte OK. Toto zaškrtávací políčko můžete použít k pozdější deaktivaci spouštěče.
V okně Nová aktivační událost si přečtěte zprávu s upozorněním a poté vyberte OK.
Výběrem možnosti Publikovat vše změny publikujte. Dokud změny nepublikujete, trigger nezačne aktivovat spuštění kanálu.
Přepněte na kartu Spuštění kanálu na levé straně a pak výběrem možnosti Aktualizovat aktualizujte seznam. Zobrazí se spuštění kanálu aktivované naplánovanou aktivační událostí. Všimněte si hodnot ve sloupci Spuštěno. Pokud použijete možnost Aktivovat nyní , zobrazí se v seznamu ruční spuštění spouštěče.
Přepněte do spouštěcí oblasti zobrazení>Plán .
Azure PowerShell
Poznámka:
K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Pokud chcete začít, přečtěte si téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
V této části se dozvíte, jak pomocí Azure PowerShell vytvořit, spustit a monitorovat aktivační událost plánu. Pokud chcete vidět, jak tato ukázka funguje, projděte si rychlý start: Vytvoření datové továrny pomocí Azure PowerShell. Poté přidejte následující kód do metody main, která vytvoří a spustí aktivační událost plánu, která se spouští každých 15 minut. Spouštěč je přidružený ke kanálu s názvem Adfv2QuickStartPipeline , který vytvoříte v rámci rychlého startu.
Požadavky
- Předplatné Azure. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
- Azure PowerShell: Postupujte podle pokynů v tématu Instalace Azure PowerShell ve Windows pomocí PowerShellGet.
Ukázkový kód
Ve složce *C:\ADFv2QuickStartPSH* vytvořte soubor JSON s názvem MyTrigger.json s následujícím obsahem:
Důležité
Před uložením souboru JSON nastavte hodnotu elementu
startTimena aktuální čas UTC. Nastavte hodnotu elementuendTimena jednu hodinu po aktuálním čase UTC.{ "properties": { "name": "MyTrigger", "type": "ScheduleTrigger", "typeProperties": { "recurrence": { "frequency": "Minute", "interval": 15, "startTime": "2017-12-08T00:00:00Z", "endTime": "2017-12-08T01:00:00Z", "timeZone": "UTC" } }, "pipelines": [{ "pipelineReference": { "type": "PipelineReference", "referenceName": "Adfv2QuickStartPipeline" }, "parameters": { "inputPath": "adftutorial/input", "outputPath": "adftutorial/output" } } ] } }Ve fragmentu kódu JSON:
Prvek
typespouštěcí události je nastaven na hodnotuScheduleTrigger.Element
frequencyje nastaven naMinuteaintervalelement je nastaven na15. Trigger proto spouští kanál každých 15 minut mezi počátečním a koncovým časem.Element
timeZoneurčuje časové pásmo, ve kterém je spouštěč vytvořen. Toto nastavení má vliv na oběstartTimeverze aendTime.Element
endTimeje jednu hodinu po hodnotě elementustartTime. Aktivační událost proto spustí kanál 15 minut, 30 minut a 45 minut po čase spuštění. Nezapomeňte aktualizovat čas zahájení na aktuální čas UTC a čas ukončení na jednu hodinu po počátečním čase.Důležité
Pro časové pásmo
startTimeUTC aendTimeje třeba dodržovat formátyyyy-MM-ddTHH:mm:ssZ. Pro ostatní časová pásmastartTimeaendTimepostupujte podle formátuyyyy-MM-ddTHH:mm:ss.Podle normy ISO 8601 se přípona
Zpoužívá k označení časového razítka data a času na časové pásmo UTC a k tomu, aby bylotimeZonepole nepoužitelné. Pokud příponaZčasového pásma UTC chybí, výsledkem je chyba při aktivaci triggeru.Spouštěč je přidružený ke kanálu
Adfv2QuickStartPipeline. Chcete-li k triggeru přidružit více kanálů, přidejte dalšípipelineReferenceoddíly.Kanál v rychlém startu má dvě
parametershodnoty:inputPathaoutputPath. Hodnoty pro tyto parametry předáváte z triggeru.
Vytvořte trigger pomocí rutiny Set-AzDataFactoryV2Trigger :
Set-AzDataFactoryV2Trigger -ResourceGroupName $ResourceGroupName -DataFactoryName $DataFactoryName -Name "MyTrigger" -DefinitionFile "C:\ADFv2QuickStartPSH\MyTrigger.json"Pomocí rutiny Get-AzDataFactoryV2Trigger ověřte, že je stav aktivace nastaven na Zastaveno.
Get-AzDataFactoryV2Trigger -ResourceGroupName $ResourceGroupName -DataFactoryName $DataFactoryName -Name "MyTrigger"Spusťte trigger pomocí rutiny Start-AzDataFactoryV2Trigger :
Start-AzDataFactoryV2Trigger -ResourceGroupName $ResourceGroupName -DataFactoryName $DataFactoryName -Name "MyTrigger"Pomocí rutiny Get-AzDataFactoryV2Trigger ověřte, že stav triggeru je Spuštěný:
Get-AzDataFactoryV2Trigger -ResourceGroupName $ResourceGroupName -DataFactoryName $DataFactoryName -Name "MyTrigger"Získání spuštění triggerů v Azure PowerShellu pomocí příkazu rutiny Get-AzDataFactoryV2TriggerRun. Chcete-li získat informace o spuštění spouštěcí události, pravidelně spouštějte následující příkaz. Aktualizujte hodnoty
TriggerRunStartedAfteraTriggerRunStartedBefore, aby odpovídaly hodnotám ve vaší definici spouštěče.Get-AzDataFactoryV2TriggerRun -ResourceGroupName $ResourceGroupName -DataFactoryName $DataFactoryName -TriggerName "MyTrigger" -TriggerRunStartedAfter "2017-12-08T00:00:00" -TriggerRunStartedBefore "2017-12-08T01:00:00"Poznámka:
Čas aktivace spouštěčů plánu je určen v časovém razítku UTC.
TriggerRunStartedAfteraTriggerRunStartedBeforetaké očekávejte časové razítko UTC.Pokud chcete monitorovat spuštění triggeru a spuštění kanálu v Azure Portal, přečtěte si téma Monitorování spuštění kanálu.
Azure CLI (příkazový řádek nástroje Azure)
V této části se dozvíte, jak pomocí Azure CLI vytvořit, spustit a monitorovat aktivační událost plánu. Pokud chcete vidět, jak tato ukázka funguje, projděte si rychlý start: Vytvoření Azure Data Factory pomocí Azure CLI. Poté postupujte podle pokynů k vytvoření a spuštění triggeru plánu, který se spouští každých 15 minut. Spouštěč je přidružený ke kanálu s názvem Adfv2QuickStartPipeline , který vytvoříte v rámci rychlého startu.
Požadavky
Použijte prostředí Bash v Azure Cloud Shellu. Další informace najdete v tématu Začínáme s Azure Cloud Shellem.
Pokud chcete spouštět referenční příkazy CLI lokálně, nainstalujte Azure CLI. Pokud používáte Windows nebo macOS, zvažte spuštění Azure CLI v kontejneru Docker. Pro více informací, viz Jak spustit Azure CLI v Docker kontejneru.
Pokud používáte místní instalaci, přihlaste se k Azure CLI pomocí příkazu az login. Chcete-li dokončit proces ověřování, postupujte podle kroků zobrazených ve vašem terminálu. Další možnosti přihlášení najdete v tématu Ověřování v Azure pomocí Azure CLI.
Když budete vyzváni, nainstalujte rozšíření Azure CLI při prvním použití. Další informace o rozšířeních najdete v tématu Použití a správa rozšíření pomocí Azure CLI.
Spusťte az version, abyste zjistili verzi a závislé knihovny, které jsou nainstalovány. Pokud chcete upgradovat na nejnovější verzi, spusťte az upgrade.
Ukázkový kód
V pracovním adresáři vytvořte soubor JSON s názvem MyTrigger.json s vlastnostmi triggeru. V tomto příkladu použijte následující obsah:
Důležité
Před uložením souboru JSON nastavte hodnotu elementu
startTimena aktuální čas UTC. Nastavte hodnotu elementuendTimena jednu hodinu po aktuálním čase UTC.{ "name": "MyTrigger", "type": "ScheduleTrigger", "typeProperties": { "recurrence": { "frequency": "Minute", "interval": 15, "startTime": "2017-12-08T00:00:00Z", "endTime": "2017-12-08T01:00:00Z", "timeZone": "UTC" } }, "pipelines": [{ "pipelineReference": { "type": "PipelineReference", "referenceName": "Adfv2QuickStartPipeline" }, "parameters": { "inputPath": "adftutorial/input", "outputPath": "adftutorial/output" } } ] }Ve fragmentu kódu JSON:
Prvek
typespouštěcí události je nastaven na hodnotuScheduleTrigger.Element
frequencyje nastaven naMinuteaintervalelement je nastaven na15. Trigger proto spouští kanál každých 15 minut mezi počátečním a koncovým časem.Element
timeZoneurčuje časové pásmo, ve kterém je spouštěč vytvořen. Toto nastavení má vliv na oběstartTimeverze aendTime.Element
endTimeje jednu hodinu po hodnotě elementustartTime. Aktivační událost proto spustí kanál 15 minut, 30 minut a 45 minut po čase spuštění. Nezapomeňte aktualizovat čas zahájení na aktuální čas UTC a čas ukončení na jednu hodinu po počátečním čase.Důležité
Pro časové pásmo
startTimeUTC musí a endTime dodržovat formátyyyy-MM-ddTHH:mm:ssZ. Pro ostatní časová pásmastartTimeaendTimepostupujte podle formátuyyyy-MM-ddTHH:mm:ss.Podle normy ISO 8601 se přípona Z používá k označení data a času na časové pásmo UTC a k tomu, aby se
timeZonepole stalo nepoužitelným. Pokud přípona Z pro časové pásmo UTC chybí, výsledkem je chyba při aktivaci spouštěče.Spouštěč je přidružený ke kanálu
Adfv2QuickStartPipeline. Chcete-li k triggeru přidružit více kanálů, přidejte dalšípipelineReferenceoddíly.Kanál v rychlém startu má dvě
parametershodnoty:inputPathaoutputPath. Hodnoty pro tyto parametry předáváte z triggeru.
Vytvořte trigger pomocí příkazu az datafactory trigger create :
az datafactory trigger create --resource-group "ADFQuickStartRG" --factory-name "ADFTutorialFactory" --name "MyTrigger" --properties @MyTrigger.jsonPomocí příkazu az datafactory trigger show ověřte, že je stav triggeru zastaven:
az datafactory trigger show --resource-group "ADFQuickStartRG" --factory-name "ADFTutorialFactory" --name "MyTrigger"Spusťte spouštěč pomocí příkazu az datafactory trigger start:
az datafactory trigger start --resource-group "ADFQuickStartRG" --factory-name "ADFTutorialFactory" --name "MyTrigger"Pomocí příkazu az datafactory trigger show potvrďte, že je stav spouštěče spuštěn
az datafactory trigger show --resource-group "ADFQuickStartRG" --factory-name "ADFTutorialFactory" --name "MyTrigger"Pomocí příkazu az datafactory trigger-run query-by-factory získáte spuštění spouštěče v Azure CLI. Pro získání informací o spuštění spouštěče pravidelně spusťte následující příkaz. Aktualizujte hodnoty
last-updated-afteralast-updated-before, aby odpovídaly hodnotám ve vaší definici spouštěče.az datafactory trigger-run query-by-factory --resource-group "ADFQuickStartRG" --factory-name "ADFTutorialFactory" --filters operand="TriggerName" operator="Equals" values="MyTrigger" --last-updated-after "2017-12-08T00:00:00" --last-updated-before "2017-12-08T01:00:00"Poznámka:
Časy spouštěčů plánu jsou určeny v časovém razítku UTC. last-updated-after a last-updated-before také očekává časové razítko UTC.
Pokud chcete monitorovat spuštění triggeru a spuštění kanálu v Azure Portal, přečtěte si téma Monitorování spuštění kanálu.
.NET SDK
V této části se dozvíte, jak pomocí sady .NET SDK vytvořit, spustit a monitorovat spouštěč. Pokud chcete vidět, jak tato ukázka funguje, projděte si rychlý start: Vytvoření datové továrny pomocí sady .NET SDK. Poté přidejte následující kód do metody main, která vytvoří a spustí aktivační událost plánu, která se spouští každých 15 minut. Spouštěč je přidružený ke kanálu s názvem Adfv2QuickStartPipeline , který vytvoříte v rámci rychlého startu.
Chcete-li vytvořit a spustit aktivační událost plánu, která se spouští každých 15 minut, přidejte do metody main následující kód:
// Create the trigger
Console.WriteLine("Creating the trigger");
// Set the start time to the current UTC time
DateTime startTime = DateTime.UtcNow;
// Specify values for the inputPath and outputPath parameters
Dictionary<string, object> pipelineParameters = new Dictionary<string, object>();
pipelineParameters.Add("inputPath", "adftutorial/input");
pipelineParameters.Add("outputPath", "adftutorial/output");
// Create a schedule trigger
string triggerName = "MyTrigger";
ScheduleTrigger myTrigger = new ScheduleTrigger()
{
Pipelines = new List<TriggerPipelineReference>()
{
// Associate the Adfv2QuickStartPipeline pipeline with the trigger
new TriggerPipelineReference()
{
PipelineReference = new PipelineReference(pipelineName),
Parameters = pipelineParameters,
}
},
Recurrence = new ScheduleTriggerRecurrence()
{
// Set the start time to the current UTC time and the end time to one hour after the start time
StartTime = startTime,
TimeZone = "UTC",
EndTime = startTime.AddHours(1),
Frequency = RecurrenceFrequency.Minute,
Interval = 15,
}
};
// Now, create the trigger by invoking the CreateOrUpdate method
TriggerResource triggerResource = new TriggerResource()
{
Properties = myTrigger
};
client.Triggers.CreateOrUpdate(resourceGroup, dataFactoryName, triggerName, triggerResource);
// Start the trigger
Console.WriteLine("Starting the trigger");
client.Triggers.Start(resourceGroup, dataFactoryName, triggerName);
Chcete-li vytvořit spouštěcí události v jiném časovém pásmu než UTC, je nutné provést následující nastavení:
<<ClientInstance>>.SerializationSettings.DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat;
<<ClientInstance>>.SerializationSettings.DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Unspecified;
<<ClientInstance>>.SerializationSettings.DateParseHandling = DateParseHandling.None;
<<ClientInstance>>.DeserializationSettings.DateParseHandling = DateParseHandling.None;
<<ClientInstance>>.DeserializationSettings.DateFormatHandling = Newtonsoft.Json.DateFormatHandling.IsoDateFormat;
<<ClientInstance>>.DeserializationSettings.DateTimeZoneHandling = Newtonsoft.Json.DateTimeZoneHandling.Unspecified;
Chcete-li sledovat spuštění triggeru, přidejte před poslední Console.WriteLine příkaz v ukázce následující kód:
// Check that the trigger runs every 15 minutes
Console.WriteLine("Trigger runs. You see the output every 15 minutes");
for (int i = 0; i < 3; i++)
{
System.Threading.Thread.Sleep(TimeSpan.FromMinutes(15));
List<TriggerRun> triggerRuns = client.Triggers.ListRuns(resourceGroup, dataFactoryName, triggerName, DateTime.UtcNow.AddMinutes(-15 * (i + 1)), DateTime.UtcNow.AddMinutes(2)).ToList();
Console.WriteLine("{0} trigger runs found", triggerRuns.Count);
foreach (TriggerRun run in triggerRuns)
{
foreach (KeyValuePair<string, string> triggeredPipeline in run.TriggeredPipelines)
{
PipelineRun triggeredPipelineRun = client.PipelineRuns.Get(resourceGroup, dataFactoryName, triggeredPipeline.Value);
Console.WriteLine("Pipeline run ID: {0}, Status: {1}", triggeredPipelineRun.RunId, triggeredPipelineRun.Status);
List<ActivityRun> runs = client.ActivityRuns.ListByPipelineRun(resourceGroup, dataFactoryName, triggeredPipelineRun.RunId, run.TriggerRunTimestamp.Value, run.TriggerRunTimestamp.Value.AddMinutes(20)).ToList();
}
}
}
Pokud chcete monitorovat spuštění triggeru a spuštění kanálu v Azure Portal, přečtěte si téma Monitorování spuštění kanálu.
Python SDK
V této části se dozvíte, jak pomocí sady Python SDK vytvořit, spustit a monitorovat spouštěč. Pokud chcete vidět, jak tato ukázka funguje, nejprve si projděte rychlý start: Vytvoření datové továrny pomocí sady Python SDK. Poté přidejte následující blok kódu za monitor the pipeline run blok kódu ve skriptu Python. Tento kód vytvoří aktivační událost plánu, která se spouští každých 15 minut mezi zadaným počátečním a koncovým časem. Aktualizujte proměnnou start_time na aktuální čas UTC a proměnnou end_time na jednu hodinu po aktuálním čase UTC.
# Create a trigger
tr_name = 'mytrigger'
scheduler_recurrence = ScheduleTriggerRecurrence(frequency='Minute', interval='15',start_time='2017-12-12T04:00:00Z', end_time='2017-12-12T05:00:00Z', time_zone='UTC')
pipeline_parameters = {'inputPath':'adftutorial/input', 'outputPath':'adftutorial/output'}
pipelines_to_run = []
pipeline_reference = PipelineReference('copyPipeline')
pipelines_to_run.append(TriggerPipelineReference(pipeline_reference, pipeline_parameters))
tr_properties = TriggerResource(properties=ScheduleTrigger(description='My scheduler trigger', pipelines = pipelines_to_run, recurrence=scheduler_recurrence))
adf_client.triggers.create_or_update(rg_name, df_name, tr_name, tr_properties)
# Start the trigger
adf_client.triggers.start(rg_name, df_name, tr_name)
Pokud chcete monitorovat spuštění triggeru a spuštění kanálu v Azure Portal, přečtěte si téma Monitorování spuštění kanálu.
Šablona Azure Resource Manageru
K vytvoření triggeru můžete použít šablonu Azure Resource Manager. Podrobné pokyny najdete v tématu Vytvoření datové továrny Azure pomocí šablony Azure Resource Manager.
Předání času spuštění triggeru kanálu
Azure Data Factory verze 1 podporuje čtení nebo zápis dělených dat pomocí systémových proměnných SliceStart, SliceEnd, WindowStarta WindowEnd. V aktuální verzi kanálů Data Factory a Azure Synapse můžete tohoto chování dosáhnout pomocí parametru kanálu. Čas spuštění a naplánovaný čas triggeru jsou nastaveny jako hodnota parametru kanálu. V následujícím příkladu je naplánovaný čas triggeru předán jako hodnota parametru pipeline scheduledRunTime :
"parameters": {
"scheduledRunTime": "@trigger().scheduledTime"
}
Schéma JSON
Následující definice JSON ukazuje, jak vytvořit aktivační událost plánu s plánováním a opakováním:
{
"properties": {
"type": "ScheduleTrigger",
"typeProperties": {
"recurrence": {
"frequency": <<Minute, Hour, Day, Week, Month>>,
"interval": <<int>>, // Optional, specifies how often to fire (default to 1)
"startTime": <<datetime>>,
"endTime": <<datetime - optional>>,
"timeZone": "UTC"
"schedule": { // Optional (advanced scheduling specifics)
"hours": [<<0-23>>],
"weekDays": [<<Monday-Sunday>>],
"minutes": [<<0-59>>],
"monthDays": [<<1-31>>],
"monthlyOccurrences": [
{
"day": <<Monday-Sunday>>,
"occurrence": <<1-5>>
}
]
}
}
},
"pipelines": [
{
"pipelineReference": {
"type": "PipelineReference",
"referenceName": "<Name of your pipeline>"
},
"parameters": {
"<parameter 1 Name>": {
"type": "Expression",
"value": "<parameter 1 Value>"
},
"<parameter 2 Name>" : "<parameter 2 Value>"
}
}
]
}
}
Důležité
Tato parameters vlastnost je povinnou vlastností pipelines prvku. Pokud váš kanál nepřijímá žádné parametry, musíte pro vlastnost parameters zahrnout prázdnou definici JSON.
Přehled schématu
Následující tabulka poskytuje základní přehled hlavních prvků schématu, které souvisejí s opakováním a plánováním triggeru.
| Vlastnost JSON | Popis |
|---|---|
startTime |
Hodnota Date-Time. U jednoduchých tabulek se hodnota startTime vlastnosti vztahuje na první výskyt. U složitých plánů se spouštěč spustí nejdříve po zadané startTime hodnotě. Pro časové pásmo UTC je 'yyyy-MM-ddTHH:mm:ssZ'formát . Pro ostatní časová pásma je yyyy-MM-ddTHH:mm:ssformát . |
endTime |
Koncové datum a čas pro aktivační událost. Spouštěč se nespustí po zadaném koncovém datu a čase. Hodnota této vlastnosti nemůže být v minulosti. Tato vlastnost je nepovinná. Pro časové pásmo UTC je 'yyyy-MM-ddTHH:mm:ssZ'formát . Pro ostatní časová pásma je yyyy-MM-ddTHH:mm:ssformát . |
timeZone |
Časové pásmo, ve kterém je spouštěč vytvořen. Toto nastavení má vliv na startTime, endTime, a schedule. Podívejte se na seznam podporovaných časových pásem. |
recurrence |
Objekt recurrence, který určuje pravidla opakování aktivační události. Objekt opakování podporuje elementy , , , frequencyinterval, a endTime . countschedule Když je definován objekt opakování, je prvek povinný.frequency Další elementy objektu recurrence jsou volitelné. |
frequency |
Jednotka frekvence, s jakou se aktivační událost opakuje. Mezi podporované hodnoty patří minute,hour,day, week, a month. |
interval |
Kladné celé číslo, které označuje interval pro frequency hodnotu, což určuje, jak často se aktivační událost spouští. Pokud jsou například interval is 3 a is frequencyweek, spouštěč se opakuje každé 3 týdny. |
schedule |
Plán opakování pro aktivační událost. Spouštěč se zadanou frequency hodnotou mění své opakování na základě plánu opakování. Tato schedule vlastnost obsahuje úpravy opakování, které jsou založeny na minutách, hodinách, dnech v týdnu, dnech v měsíci a čísle týdne. |
Důležité
Pro časové pásmo startTime UTC a endTime je třeba dodržovat formát yyyy-MM-ddTHH:mm:ssZ. Pro ostatní časová pásma startTime a endTime postupujte podle formátu yyyy-MM-ddTHH:mm:ss .
Podle normy ISO 8601 se přípona Z používá k označení data a času na časové pásmo UTC a k tomu, aby se timeZone pole stalo nepoužitelným. Pokud přípona Z pro časové pásmo UTC chybí, výsledkem je chyba při aktivaci spouštěče.
Výchozí hodnoty, omezení a příklady schématu
| Vlastnost JSON | Typ | Povinné | Výchozí hodnota | Platné hodnoty | Příklad |
|---|---|---|---|---|---|
startTime |
Řetězec | Ano | Žádné | ISO-8601 datumy a časy | Pro časové pásmo UTC: "startTime" : "2013-01-09T09:30:00-08:00Z" Pro ostatní časová pásma: "2013-01-09T09:30:00-08:00" |
timeZone |
Řetězec | Ano | Žádné | Hodnoty časového pásma | "UTC" |
recurrence |
Objekt | Ano | Žádné | Objekt opakování | "recurrence" : { "frequency" : "monthly", "interval" : 1 } |
interval |
Číslo | Ne | 1 | 1 až 1 000 | "interval":10 |
endTime |
Řetězec | Ano | Žádné | Date-Time hodnota, která představuje čas v budoucnosti | Pro časové pásmo UTC: "endTime" : "2013-02-09T09:30:00-08:00Z" Pro ostatní časová pásma: "endTime" : "2013-02-09T09:30:00-08:00" |
schedule |
Objekt | Ne | Žádné | Naplánovat objekt | "schedule" : { "minute" : [30], "hour" : [8,17] } |
Možnost časového pásma
Zde jsou některá časová pásma podporovaná pro spouštěče plánu.
| Časové pásmo | Posun UTC (mimo přechod na letní čas) | Hodnota timeZone | Dodržujte letní čas | Formát časového razítka |
|---|---|---|---|---|
| koordinovaný univerzální čas (UTC) | 0 | UTC |
Ne | 'yyyy-MM-ddTHH:mm:ssZ' |
| Tichomořský čas (PT) | -8 | Pacific Standard Time |
Ano | 'yyyy-MM-ddTHH:mm:ss' |
| Centrální čas (CT) | -6 | Central Standard Time |
Ano | 'yyyy-MM-ddTHH:mm:ss' |
| Východní čas (ET) | -5 | Eastern Standard Time |
Ano | 'yyyy-MM-ddTHH:mm:ss' |
| Greenwichský střední čas (GMT) | 0 | GMT Standard Time |
Ano | 'yyyy-MM-ddTHH:mm:ss' |
| Středoevropský standardní čas | +1 | W. Europe Standard Time |
Ano | 'yyyy-MM-ddTHH:mm:ss' |
| Indický standardní čas (IST) | +5:30 | India Standard Time |
Ne | 'yyyy-MM-ddTHH:mm:ss' |
| Standardní čas Číny | +8 | China Standard Time |
Ne | 'yyyy-MM-ddTHH:mm:ss' |
Tento seznam je neúplný. Úplný seznam možností časového pásma najdete na stránce Vytvoření triggeru na portálu.
Vlastnost startTime
Následující tabulka ukazuje, jak tato startTime vlastnost řídí spuštění triggeru.
| Hodnota startTime | Opakování bez plánu | Opakování podle rozvrhu |
|---|---|---|
| Čas zahájení v minulosti | Vypočítá první budoucí čas spuštění po čase spuštění a spustí se v tomto čase. Spustí následná spuštění na základě výpočtu z času posledního spuštění. Prohlédněte si příklad pod touto tabulkou. |
Aktivační událost se spustí nejdříve ve stanovený čas začátku. První výskyt je založen na plánu, který se vypočítá od počátečního času. Zahájí další spuštění podle plánu opakování. |
| Čas zahájení v budoucnu nebo v současnosti | Spustí se jednou v zadaný čas začátku. Spustí následná spuštění na základě výpočtu z času posledního spuštění. |
Aktivační událost se spustí nejdříve v zadaném čase začátku. První výskyt je založen na plánu, který se vypočítá od počátečního času. Zahájí další spuštění podle plánu opakování. |
Podívejme se na příklad toho, co se stane, když je čas spuštění v minulosti, s opakováním, ale bez plánu. Předpokládejme, že aktuální čas je 2017-04-08 13:00, čas spuštění je 2017-04-07 14:00a opakování je každé dva dny. (Hodnota recurrence je definována nastavením frequency vlastnosti na day a interval vlastnosti na 2.) Všimněte si, že hodnota startTime je v minulosti a vyskytuje se před aktuálním časem.
Za těchto podmínek je první spuštění v 2017-04-09 .14:00 Modul plánovače vypočítá provedení úloh od času začátku. Všechny instance v minulosti se zahodí. Motor použije další příklad, který se vyskytne v budoucnosti. V tomto scénáři je 2017-04-07 čas spuštění v 2:00pm, takže další instance je dva dny od tohoto času, což je 2017-04-09 v 2:00pm.
Doba prvního spuštění je stejná, i když je startTime2017-04-05 14:00 hodnota nebo 2017-04-01 14:00. Po prvním spuštění se další spuštění vypočítají na základě harmonogramu. Proto jsou následující spuštění v , pak v , pak v 2017-04-11, atd2:00pm.2017-04-132:00pm2017-04-152:00pm
A konečně, pokud v plánu spouštěče nejsou nastaveny hodiny nebo minuty, použijí se jako výchozí hodiny nebo minuty prvního spuštění.
Vlastnost plánu
Použití plánu může omezit počet spuštění spouštěče. Pokud je například spuštění spouštěče s měsíční frekvencí naplánováno pouze na 31. den, spustí se pouze v měsících, které mají 31. den.
Plán může také rozšířit počet spuštění spouštěče. Například aktivační událost s měsíční frekvencí, která má naplánované spouštění na 1. a 2. den v měsíci, se nespustí jednou za měsíc, ale první a druhý den v měsíci.
Pokud je zadáno více schedule prvků, pořadí vyhodnocení je od největšího po nejmenší nastavení plánu. Vyhodnocení začíná číslem týdne a poté dnem v měsíci, dnem v týdnu, hodinou a nakonec minutou.
Následující tabulka popisuje tyto schedule prvky podrobně.
| Element JSON | Popis | Platné hodnoty |
|---|---|---|
minutes |
Minuty v hodině, kdy se spouští spouštěč. |
|
hours |
Hodiny dne, ve kterých se spouštěč spouští. |
|
weekDays |
Dny v týdnu, ve kterých je spouštěč spuštěn. Hodnotu lze zadat pouze s týdenní frekvencí. |
|
monthlyOccurrences |
Dny v měsíci, na které se spouštěč spouští. Tuto hodnotu je možné zadat jenom při měsíční frekvenci. |
|
monthDays |
Den v měsíci, ve kterém se spouštěč spouští. Tuto hodnotu je možné zadat jenom při měsíční frekvenci. |
|
Příklady plánů opakování aktivačních událostí
Tato část obsahuje příklady plánů opakování a zaměřuje se na schedule objekt a jeho prvky.
Příklady předpokládají, že interval hodnota je 1 a že frequency hodnota je správná podle definice plánu. Nemůžete mít frequency například hodnotu a day také mít monthDays v objektu úpravu schedule . Omezení, jako jsou tato, jsou uvedena v tabulce v předchozí části.
| Příklad | Popis |
|---|---|
{"hours":[5]} |
Běhej každý den v 5:00 ráno. |
{"minutes":[15], "hours":[5]} |
Běhejte každý den v 5:15 ráno. |
{"minutes":[15], "hours":[5,17]} |
Běh v 5:15 ráno a 17:15 odpoledne každý den. |
{"minutes":[15,45], "hours":[5,17]} |
Spuštění každý den v 5:15 ráno, 5:45 ráno, 17:15 odpoledne a 17:45 odpoledne. |
{"minutes":[0,15,30,45]} |
Spustí se každých 15 minut. |
{hours":[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23]} |
Spouštěj každou hodinu. Tento spouštěč běží každou hodinu. Minuty jsou řízeny startTime hodnotou, při které je hodnota specifikována. Pokud hodnotu nezadáte, minuty se řídí časem vytvoření. Například, pokud je počáteční čas nebo čas vytvoření (podle potřeby) 12:25 odpoledne, aktivační událost se spustí ve 0:25, 1:25, 2:25, ..., a 23:25.Tento plán je ekvivalentní aktivační události s frequency hodnotou , hodnotou hourinterval, a no 1schedule. Tento plán lze použít s různými frequency hodnotami a interval k vytvoření dalších spouštěčů. Pokud je frequencynapříklad hodnota month , plán se spustí pouze jednou za měsíc, nikoli každý den, kdy je frequencyhodnota day . |
{"minutes":[0]} |
Běž každou hodinu v celou. Tento spouštěč se spouští každou hodinu přesně, počínaje půlnocí ve 12:00, 1:00, 2:00 atd. Tento plán je ekvivalentní spouštěči s frequency hodnotou hourstartTime a hodnotou nula minut nebo no schedule , ale s frequency hodnotou day. Pokud je frequency hodnota week nebo month, plán se provádí pouze jeden den v týdnu nebo jeden den v měsíci. |
{"minutes":[15]} |
Spouštět každou hodinu v 15 minut. Tento časovač se spouští každou hodinu v 15 minut po celé hodině, začíná ve 00:15 AM, 1:15 AM, 2:15 AM, a tak dále až do 11:15 PM. |
{"hours":[17], "weekDays":["saturday"]} |
Běh každou sobotu v 17:00. |
{"hours":[17], "weekDays":["monday", "wednesday", "friday"]} |
Spouštějte v 17:00 každé pondělí, středu a pátek. |
{"minutes":[15,45], "hours":[17], "weekDays":["monday", "wednesday", "friday"]} |
Probíhá každý týden v pondělí, středu a pátek v 17:15 a 17:45. |
{"minutes":[0,15,30,45], "weekDays":["monday", "tuesday", "wednesday", "thursday", "friday"]} |
Běží každých 15 minut ve všední dny. |
{"minutes":[0,15,30,45], "hours": [9, 10, 11, 12, 13, 14, 15, 16] "weekDays":["monday", "tuesday", "wednesday", "thursday", "friday"]} |
Jezdí ve všední dny každých 15 minut mezi 9:00 a 16:45. |
{"weekDays":["tuesday", "thursday"]} |
Probíhá každé úterý a čtvrtek v určený začátek. |
{"minutes":[0], "hours":[6], "monthDays":[28]} |
Spouštějte 28. den v měsíci v 6:00 (za předpokladu frequency hodnoty month). |
{"minutes":[0], "hours":[6], "monthDays":[-1]} |
Spusťte se v poslední den měsíce v 6:00 ráno. Pokud chcete spustit aktivační událost poslední den v měsíci, použijte místo hodnot 28, 29, 30 nebo 31 hodnotu -1. |
{"minutes":[0], "hours":[6], "monthDays":[1,-1]} |
Spustit v 6:00 ráno každý první a poslední den každého měsíce. |
{monthDays":[1,14]} |
Spusťte první a 14. den každého měsíce v určený čas zahájení. |
{"minutes":[0], "hours":[5], "monthlyOccurrences":[{"day":"friday", "occurrence":1}]} |
Probíhá každý první pátek v měsíci v 5:00 ráno. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":1}]} |
Spouští se každý první pátek v měsíci ve stanoveném čase zahájení. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":-3}]} |
Každý třetí pátek před koncem měsíce ve stanovenou dobu. |
{"minutes":[15], "hours":[5], "monthlyOccurrences":[{"day":"friday", "occurrence":1},{"day":"friday", "occurrence":-1}]} |
Běží každý první a poslední pátek v měsíci v 5:15 ráno. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":1},{"day":"friday", "occurrence":-1}]} |
Spouští se každý první a poslední pátek v měsíci ve stanovený začátek. |
{"monthlyOccurrences":[{"day":"friday", "occurrence":5}]} |
Probíhat každý pátý pátek v měsíci v určeném čase zahájení. Když není pátý pátek v měsíci, potrubí se nespustí, protože je naplánováno spuštění pouze na pátý pátek. Chcete-li spouštěč spustit poslední pátek v měsíci, zvažte použití hodnoty -1 místo hodnoty 5 occurrence . |
{"minutes":[0,15,30,45], "monthlyOccurrences":[{"day":"friday", "occurrence":-1}]} |
Každých 15 minut v poslední pátek v měsíci. |
{"minutes":[15,45], "hours":[5,17], "monthlyOccurrences":[{"day":"wednesday", "occurrence":3}]} |
Spuštění každou třetí středu v měsíci v 5:15 ráno, 5:45 ráno, 17:15 odpoledne a 17:45 odpoledne. |
Související obsah
- Další informace o triggerech najdete v části Spouštění kanálů a triggery.
- Informace o tom, jak odkazovat na metadata triggeru v kanálu, najdete v tématu Odkazování na metadata triggeru při spuštění kanálu.