New-PSWorkflowExecutionOption
Crée un objet qui contient des options de configuration de session pour les sessions de flux de travail.
Syntaxe
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>]
Description
L’applet de commande New-PSWorkflowExecutionOption
crée un objet qui contient des options avancées pour les configurations de session de flux de travail, c’est-à-dire des configurations de session conçues pour exécuter des flux de travail Windows PowerShell.
Vous pouvez utiliser l’objet PSWorkflowExecutionOption généré New-PSWorkflowExecutionOption
comme valeur du paramètre SessionTypeOption des applets de commande qui créent ou modifient une configuration de session, comme les applets de commande Register-PSSessionConfiguration
et Set-PSSessionConfiguration
.
Chaque paramètre de l’applet de commande New-PSWorkflowExecutionOption
représente une propriété de l’objet d’option de configuration de session de workflow retourné par l’applet de commande. Si vous omettez un paramètre, l’applet de commande crée l’objet avec une valeur par défaut pour la propriété.
L’applet de commande New-PSWorkflowExecutionOption
fait partie de la fonctionnalité Workflow Windows PowerShell.
Vous pouvez également ajouter des paramètres courants de flux de travail à cette commande. Pour plus d’informations sur les paramètres courants de flux de travail, consultez about_WorkflowCommonParameters.
Cette applet de commande est introduite dans Windows PowerShell 3.0.
Exemples
Exemple 1 : Créer un objet Options de flux de travail
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
Cette commande utilise l’applet de commande
La sortie affiche l’objet retourné par l’applet de commande.
Exemple 2 : Utilisation d’un objet Options de flux de travail
# 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 : https://schemas.microsoft.com/powershell/ITWorkflows
MaxConcurrentCommandsPerShell : 1000
allowedactivity : PSDefaultActivities
UseSharedProcess : false
ProcessIdleTimeoutSec : 0
xmlns : https://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 :
Les deux premières commandes créent un objet de configuration de session et l’inscrivent.
La troisième commande utilise l’applet de commande Get-PSSessionConfiguration
pour obtenir la configuration de session ITWorkflows et le Format-List
pour afficher toutes les propriétés de la configuration de session dans une liste. La sortie indique que les options de flux de travail dans la configuration de session. Plus précisément, la configuration de session a une propriété MaxSessionsPerWorkflow dont la valeur est 10 et une propriété MaxDisconnectedSessions avec la valeur 200.
Paramètres
-ActivityProcessIdleTimeoutSec
Détermine la durée pendant laquelle chaque processus hôte d’activité est conservé une fois le processus inactif. Lorsque l’intervalle expire, le processus se ferme.
Entrez une valeur en secondes. La valeur par défaut est 60.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 60 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-AllowedActivity
Spécifie les activités autorisées à s’exécuter dans la session.
Entrez les noms d’activité qualifiés par l’espace de noms, tels que Microsoft.Powershell.HyperV.Activities.*
.
Les caractères génériques sont pris en charge. La valeur par défaut, PSDefaultActivities, inclut les activités Intégrées de Windows Workflow Foundation et les activités qui représentent les applets de commande Windows PowerShell Core.
Type: | String[] |
Position: | Named |
Valeur par défaut: | PSDefaultActivities |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-EnableValidation
Vérifie que toutes les activités de flux de travail de la session sont incluses dans la liste des activités autorisées.
La valeur par défaut est True. Pour désactiver la validation, utilisez le format de commande suivant : -EnableValidation:$false
.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | True |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MaxActivityProcesses
Spécifie le nombre maximal de processus qui peuvent être créés dans la session pour prendre en charge les activités de flux de travail. La valeur par défaut est 5.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 5 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MaxConnectedSessions
Spécifie le nombre maximal de sessions distantes qui sont dans un état opérationnel. Ce quota est appliqué aux sessions connectées à tous les nœuds distants (ordinateurs cibles). La valeur par défaut est 100.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 100 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MaxDisconnectedSessions
Spécifie le nombre maximal de sessions distantes qui sont dans un état déconnecté. Ce quota est appliqué aux sessions connectées à tous les nœuds distants (ordinateurs cibles). La valeur par défaut est 1 000.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 1000 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MaxPersistenceStoreSizeGB
Spécifie la taille maximale, en gigaoctets, du magasin de persistance alloué aux flux de travail qui s’exécutent dans la session. Lorsque la taille est dépassée, le magasin de persistance est développé pour enregistrer toutes les données persistantes, mais un avertissement s’affiche et un message est écrit dans le journal des événements du flux de travail. La valeur par défaut est 10.
Le magasin de persistance contient des données pour tous les travaux de flux de travail. La possibilité de stocker des données permet aux travaux de reprendre sans perdre l’état.
Type: | Int64 |
Position: | Named |
Valeur par défaut: | 10 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MaxRunningWorkflows
Spécifie le nombre maximal de flux de travail qui peuvent s’exécuter simultanément dans la session. La valeur par défaut est 30.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 30 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MaxSessionsPerRemoteNode
Spécifie le nombre maximal de sessions qui peuvent être connectées à chaque nœud distant (ordinateur cible). La valeur par défaut est 5.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 5 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-MaxSessionsPerWorkflow
Spécifie le nombre maximal de sessions qui peuvent être créées pour prendre en charge chaque flux de travail. La valeur par défaut est 5.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 5 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-OutOfProcessActivity
Détermine les activités autorisées (spécifiées par le paramètre AllowedActivities) qui sont hors processus. La valeur par défaut est InlineScript .
Type: | String[] |
Position: | Named |
Valeur par défaut: | InlineScript |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-PersistencePath
Spécifie l’emplacement sur le disque où sont stockées l’état et les données du flux de travail. Le stockage de l’état et des données du flux de travail permet aux flux de travail d’être suspendus et repris, et de récupérer des interruptions et des défaillances réseau.
La valeur par défaut est $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS
.
Type: | String |
Position: | Named |
Valeur par défaut: | False |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-PersistWithEncryption
Indique que le flux de travail chiffre les données dans le magasin de persistance. Envisagez d’utiliser cette fonctionnalité lors du stockage des données de persistance dans un partage réseau.
Type: | SwitchParameter |
Position: | Named |
Valeur par défaut: | $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-RemoteNodeSessionIdleTimeoutSec
Spécifie la durée pendant laquelle une session connectée à un nœud distant (ordinateur cible) est conservée si elle est inactive.
Entrez une valeur en secondes. La valeur par défaut est 60.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 60 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-SessionThrottleLimit
Spécifie le nombre d’opérations créées pour prendre en charge tous les flux de travail démarrés dans la session. La valeur par défaut est 100.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 100 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
-WorkflowShutdownTimeoutMSec
Spécifie la durée pendant laquelle la session est conservée après que tous les flux de travail de la session soient suspendus de force. Lorsque le délai d’expiration expire, Windows PowerShell ferme la session, même si tous les flux de travail ne sont pas encore suspendus.
Entrez une valeur en millisecondes. La valeur par défaut est 500.
Type: | Int32 |
Position: | Named |
Valeur par défaut: | 500 |
Obligatoire: | False |
Accepter l'entrée de pipeline: | False |
Accepter les caractères génériques: | False |
Entrées
None
Vous ne pouvez pas diriger l’entrée vers cette applet de commande.
Sorties
Notes
Lorsque la valeur maximale définie par une option est dépassée, la commande permettant de créer une autre instance dans la session échoue, sauf indication contraire dans la description du paramètre. Par exemple, si la valeur de MaxConnectedSessions est 100. La commande permettant de créer la 101e session sur un nœud distant (ordinateur cible) échoue.
Les propriétés d’un objet de configuration de session varient selon les options définies pour la configuration de session et les valeurs de ces options. En outre, les configurations de session qui utilisent un fichier de configuration de session ont des propriétés supplémentaires.
En particulier, les propriétés des configurations de session qui incluent une PSWorkflowExecutionOptions objet varient en fonction des valeurs d’option de flux de travail. Par exemple, si la configuration de session inclut un objet PSWorkflowExecutionOptions qui définit une valeur non par défaut pour la propriété SessionThrottleLimit, la configuration de session a une propriété SessionThrottleLimit. Sinon, ce n’est pas le cas.