New-PSWorkflowExecutionOption
Tworzy obiekt zawierający opcje konfiguracji sesji dla sesji przepływu pracy.
Składnia
New-PSWorkflowExecutionOption
[-PersistencePath <String>]
[-MaxPersistenceStoreSizeGB <Int64>]
[-PersistWithEncryption]
[-MaxRunningWorkflows <Int32>]
[-AllowedActivity <String[]>]
[-OutOfProcessActivity <String[]>]
[-EnableValidation]
[-MaxDisconnectedSessions <Int32>]
[-MaxConnectedSessions <Int32>]
[-MaxSessionsPerWorkflow <Int32>]
[-MaxSessionsPerRemoteNode <Int32>]
[-MaxActivityProcesses <Int32>]
[-ActivityProcessIdleTimeoutSec <Int32>]
[-RemoteNodeSessionIdleTimeoutSec <Int32>]
[-SessionThrottleLimit <Int32>]
[-WorkflowShutdownTimeoutMSec <Int32>]
[<CommonParameters>]
Opis
Polecenie New-PSWorkflowExecutionOption
cmdlet tworzy obiekt zawierający zaawansowane opcje konfiguracji sesji przepływu pracy, czyli konfiguracje sesji przeznaczone do uruchamiania przepływów pracy przepływu pracy programu Windows PowerShell.
Można użyć obiektu PSWorkflowExecutionOption, który New-PSWorkflowExecutionOption
generuje jako wartość parametru SessionTypeOption poleceń cmdlet, które tworzą lub zmieniają konfigurację sesji, takie jak Register-PSSessionConfiguration
polecenia cmdlet iSet-PSSessionConfiguration
.
Każdy parametr New-PSWorkflowExecutionOption
polecenia cmdlet reprezentuje właściwość obiektu konfiguracji sesji przepływu pracy zwracany przez polecenie cmdlet. Jeśli pominiesz parametr, polecenie cmdlet utworzy obiekt z wartością domyślną dla właściwości.
Polecenie New-PSWorkflowExecutionOption
cmdlet jest częścią funkcji przepływu pracy programu Windows PowerShell.
Do tego polecenia można również dodać typowe parametry przepływu pracy. Aby uzyskać więcej informacji na temat typowych parametrów przepływu pracy, zobacz about_WorkflowCommonParameters.
To polecenie cmdlet zostało wprowadzone w programie Windows PowerShell 3.0.
Przykłady
Przykład 1. Tworzenie obiektu Opcji przepływu pracy
New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200
SessionThrottleLimit : 100
PersistencePath : C:\Users\User01\AppData\Local\Microsoft\Windows\PowerShell\WF\PS
MaxPersistenceStoreSizeGB : 10
PersistWithEncryption : False
MaxRunningWorkflows : 30
AllowedActivity : {PSDefaultActivities}
OutOfProcessActivity : {InlineScript}
EnableValidation : True
MaxDisconnectedSessions : 200
MaxConnectedSessions : 100
MaxSessionsPerWorkflow : 10
MaxSessionsPerRemoteNode : 5
MaxActivityProcesses : 5
ActivityProcessIdleTimeoutSec : 60
RemoteNodeSessionIdleTimeoutSec : 60
WorkflowShutdownTimeoutMSec : 500
To polecenie używa New-PSWorkflowExecutionOption
polecenia cmdlet, aby zwiększyć wartość MaxSessionsPerWorkflow do 10 i zmniejszyć wartość MaxDisconnectedSessions do 200.
Dane wyjściowe pokazują obiekt zwracany przez polecenie cmdlet.
Przykład 2: używanie obiektu Opcje przepływu pracy
# Create a Workflow Options object and save it in a variable
$wo = New-PSWorkflowExecutionOption -MaxSessionsPerWorkflow 10 -MaxDisconnectedSessions 200
# Create the ITWorkflow session configuration
Register-PSSessionConfiguration -Name ITWorkflows -SessionTypeOption $wo -Force
WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin
Type Keys Name
---- ---- ----
Container {Name=ITWorkflows} ITWorkflows
Get-PSSessionConfiguration ITWorkflows | Format-List -Property *
Architecture : 64
Filename : %windir%\system32\pwrshplugin.dll
ResourceUri : http://schemas.microsoft.com/powershell/ITWorkflows
MaxConcurrentCommandsPerShell : 1000
allowedactivity : PSDefaultActivities
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : http://schemas.microsoft.com/wbem/wsman/1/config/PluginConfiguration
MaxConcurrentUsers : 5
maxsessionsperworkflow : 10
lang : en-US
sessionconfigurationdata : <SessionConfigurationData>
<Param Name='PrivateData'>
<PrivateData>
<ParamName='enablevalidation' Value='True'/>
<Param Name='allowedactivity'Value='PSDefaultActivities' />
<Param Name='outofprocessactivity' Value='InlineScript'/>
<Param Name='maxdisconnectedsessions' Value='200' />
<ParamName='maxsessionsperworkflow' Value='10'/>
</PrivateData>
</Param>
</SessionConfigurationData>
SupportsOptions : true
ExactMatch : true
RunAsUser :
IdleTimeoutms : 7200000
PSVersion : 3.0
OutputBufferingMode : Block
AutoRestart : false
MaxShells : 25
MaxMemoryPerShellMB : 1024
MaxIdleTimeoutms : 43200000
outofprocessactivity : InlineScript
SDKVersion : 2
Name : ITWorkflows
XmlRenderingType : text
Capability : {Shell}
RunAsPassword :
MaxProcessesPerShell : 15
enablevalidation : True
Enabled : True
maxdisconnectedsessions : 200
MaxShellsPerUser : 25
Permission :
Dwa pierwsze polecenia tworzą nowy obiekt konfiguracji sesji i rejestrują go.
Trzecie polecenie używa Get-PSSessionConfiguration
polecenia cmdlet do pobrania konfiguracji sesji ITWorkflows i polecenia , Format-List
aby wyświetlić wszystkie właściwości konfiguracji sesji na liście. Dane wyjściowe pokazują, że opcje przepływu pracy w konfiguracji sesji. W szczególności konfiguracja sesji ma właściwość MaxSessionsPerWorkflow o wartości 10 i właściwości MaxDisconnectedSessions o wartości 200.
Parametry
-ActivityProcessIdleTimeoutSec
Określa, jak długo każdy proces hosta działań jest utrzymywany po zakończeniu procesu bezczynności. Po wygaśnięciu interwału proces zostanie zamknięty.
Wprowadź wartość w sekundach. Wartość domyślna to 60.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 60 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-AllowedActivity
Określa działania, które mogą być uruchamiane w sesji.
Wprowadź nazwy działań kwalifikowanych w przestrzeni nazw, na przykład Microsoft.Powershell.HyperV.Activities.*
.
Obsługiwane są symbole wieloznaczne. Wartość domyślna PSDefaultActivities zawiera wbudowane działania programu Windows Workflow Foundation i działania reprezentujące podstawowe polecenia cmdlet programu Windows PowerShell.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | PSDefaultActivities |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-EnableValidation
Sprawdza, czy wszystkie działania przepływu pracy w sesji znajdują się na liście dozwolonych działań.
Wartość domyślna to True. Aby wyłączyć walidację, użyj następującego formatu polecenia: -EnableValidation:$false
.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | True |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MaxActivityProcesses
Określa maksymalną liczbę procesów, które można utworzyć w sesji w celu obsługi działań przepływu pracy. Domyślna wartość wynosi 5.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 5 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MaxConnectedSessions
Określa maksymalną liczbę sesji zdalnych, które są w stanie operacyjnym. Ten przydział jest stosowany do sesji połączonych ze wszystkimi węzłami zdalnymi (komputerami docelowymi). Wartość domyślna to 100.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 100 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MaxDisconnectedSessions
Określa maksymalną liczbę sesji zdalnych, które są w stanie rozłączenia. Ten przydział jest stosowany do sesji połączonych ze wszystkimi węzłami zdalnymi (komputerami docelowymi). Wartość domyślna to 1000.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 1000 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MaxPersistenceStoreSizeGB
Określa maksymalny rozmiar w gigabajtach magazynu trwałości przydzielonego do przepływów pracy uruchamianych w sesji. Gdy rozmiar zostanie przekroczony, magazyn trwałości zostanie rozszerzony, aby zapisać wszystkie utrwalone dane, ale zostanie wyświetlone ostrzeżenie i zostanie zapisany komunikat w dzienniku zdarzeń przepływu pracy. Wartość domyślna to 10.
Magazyn trwałości zawiera dane dla wszystkich zadań przepływu pracy. Możliwość przechowywania danych umożliwia wznowienie zadań bez utraty stanu.
Typ: | Int64 |
Position: | Named |
Domyślna wartość: | 10 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MaxRunningWorkflows
Określa, że maksymalna liczba przepływów pracy, które mogą być uruchamiane jednocześnie w sesji. Wartość domyślna to 30.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 30 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MaxSessionsPerRemoteNode
Określa maksymalną liczbę sesji, które można połączyć z każdym węzłem zdalnym (komputerem docelowym). Domyślna wartość wynosi 5.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 5 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MaxSessionsPerWorkflow
Określa maksymalną liczbę sesji, które można utworzyć w celu obsługi każdego przepływu pracy. Domyślna wartość wynosi 5.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 5 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-OutOfProcessActivity
Określa, które dozwolone działania (określone przez parametr AllowedActivities ) są uruchamiane poza procesem. Wartość domyślna to InlineScript.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | InlineScript |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-PersistencePath
Określa lokalizację na dysku, w której są przechowywane stany i dane przepływu pracy. Przechowywanie stanu i danych przepływu pracy umożliwia zawieszanie i wznawianie przepływów pracy oraz odzyskiwanie po przerwach i awariach sieci.
Domyślna wartość to $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS
.
Typ: | String |
Position: | Named |
Domyślna wartość: | False |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-PersistWithEncryption
Wskazuje, że przepływ pracy szyfruje dane w magazynie trwałości. Rozważ użycie tej funkcji podczas przechowywania danych trwałości w udziale sieciowym.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RemoteNodeSessionIdleTimeoutSec
Określa, jak długo jest utrzymywana sesja połączona z węzłem zdalnym (komputerem docelowym), jeśli jest bezczynna.
Wprowadź wartość w sekundach. Wartość domyślna to 60.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 60 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-SessionThrottleLimit
Określa, ile operacji jest tworzonych w celu obsługi wszystkich przepływów pracy uruchomionych w sesji. Wartość domyślna to 100.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 100 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WorkflowShutdownTimeoutMSec
Określa, jak długo sesja jest utrzymywana po wymuszonym wstrzymaniu wszystkich przepływów pracy w sesji. Po wygaśnięciu limitu czasu program Windows PowerShell zamyka sesję, nawet jeśli wszystkie przepływy pracy nie są jeszcze zawieszone.
Wprowadź wartość w milisekundach. Wartość domyślna to 500.
Typ: | Int32 |
Position: | Named |
Domyślna wartość: | 500 |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
None
Nie można potokować obiektów do tego polecenia cmdlet.
Dane wyjściowe
Uwagi
Po przekroczeniu maksymalnej wartości ustawionej przez opcję polecenie utworzenia innego wystąpienia w sesji kończy się niepowodzeniem, chyba że zostanie zanotowany w opisie parametru. Jeśli na przykład wartość maxConnectedSessions to 100. Polecenie utworzenia sesji 101.00 do węzła zdalnego (komputera docelowego) kończy się niepowodzeniem.
Właściwości obiektu konfiguracji sesji różnią się w zależności od opcji ustawionych dla konfiguracji sesji i wartości tych opcji. Ponadto konfiguracje sesji korzystające z pliku konfiguracji sesji mają dodatkowe właściwości.
W szczególności właściwości konfiguracji sesji, które obejmują obiekt PSWorkflowExecutionOptions , różnią się w zależności od wartości opcji przepływu pracy. Jeśli na przykład konfiguracja sesji zawiera obiekt PSWorkflowExecutionOptions, który ustawia wartość inną niż domyślna dla właściwości SessionThrottleLimit, konfiguracja sesji ma właściwość SessionThrottleLimit. W przeciwnym razie tak nie jest.