Partilhar via


New-PSWorkflowExecutionOption

Cria um objeto que contém opções de configuração de sessão para sessões de fluxo de trabalho.

Sintaxe

Default (Predefinição)

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

O cmdlet New-PSWorkflowExecutionOption cria um objeto que contém opções avançadas para configurações de sessão de fluxo de trabalho, ou seja, configurações de sessão projetadas para executar fluxos de trabalho de Fluxo de Trabalho do Windows PowerShell.

Você pode usar o objeto PSWorkflowExecutionOption que New-PSWorkflowExecutionOption gera como o valor do SessionTypeOption parâmetro de cmdlets que criam ou alteram uma configuração de sessão, como os cmdlets Register-PSSessionConfiguration e Set-PSSessionConfiguration.

Cada parâmetro do cmdlet New-PSWorkflowExecutionOption representa uma propriedade do objeto de opção de configuração de sessão de fluxo de trabalho que o cmdlet retorna. Se você omitir um parâmetro, o cmdlet criará o objeto com um valor padrão para a propriedade.

O cmdlet New-PSWorkflowExecutionOption faz parte do recurso Fluxo de Trabalho do Windows PowerShell.

Você também pode adicionar parâmetros comuns do fluxo de trabalho a esse comando. Para obter mais informações sobre parâmetros comuns de fluxo de trabalho, consulte about_WorkflowCommonParameters.

Este cmdlet é introduzido no Windows PowerShell 3.0.

Exemplos

Exemplo 1: Criar um objeto de opções de fluxo de trabalho

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

Este comando usa o cmdlet New-PSWorkflowExecutionOption para aumentar o valor MaxSessionsPerWorkflow para 10 e diminuir o valor MaxDisconnectedSessions para 200.

A saída mostra o objeto que o cmdlet retorna.

Exemplo 2: Usando um objeto de opções de fluxo de trabalho

# 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                    :

Os dois primeiros comandos criam um novo objeto de configuração de sessão e o registram.

O terceiro comando usa o cmdlet Get-PSSessionConfiguration para obter a configuração da sessão ITWorkflows e o Format-List para exibir todas as propriedades da configuração da sessão em uma lista. A saída mostra que as opções de fluxo de trabalho na configuração da sessão. Especificamente, a configuração da sessão tem uma propriedade MaxSessionsPerWorkflow com um valor de 10 e uma propriedade MaxDisconnectedSessions com um valor de 200.

Parâmetros

-ActivityProcessIdleTimeoutSec

Determina por quanto tempo cada processo de host de atividade é mantido depois que o processo fica ocioso. Quando o intervalo expira, o processo é fechado.

Insira um valor em segundos. O valor padrão é 60.

Propriedades dos parâmetros

Tipo:Int32
Default value:60
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-AllowedActivity

Especifica as atividades que podem ser executadas na sessão.

Insira nomes de atividades qualificadas para namespace, como Microsoft.PowerShell.HyperV.Activities.*. Caracteres curinga são suportados. O valor padrão, PSDefaultActivities, inclui as atividades internas do Windows Workflow Foundation e as atividades que representam os principais cmdlets do Windows PowerShell.

Propriedades dos parâmetros

Tipo:

String[]

Default value:PSDefaultActivities
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-EnableValidation

Verifica se todas as atividades de fluxo de trabalho na sessão estão incluídas na lista de atividades permitidas.

O valor padrão é True. Para desativar a validação, use o seguinte formato de comando: -EnableValidation:$false.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:True
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-MaxActivityProcesses

Especifica o número máximo de processos que podem ser criados na sessão para dar suporte a atividades de fluxo de trabalho. O valor padrão é 5.

Propriedades dos parâmetros

Tipo:Int32
Default value:5
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-MaxConnectedSessions

Especifica o número máximo de sessões remotas que estão em um estado operacional. Essa cota é aplicada a sessões conectadas a todos os nós remotos (computadores de destino). O valor padrão é 100.

Propriedades dos parâmetros

Tipo:Int32
Default value:100
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-MaxDisconnectedSessions

Especifica o número máximo de sessões remotas que estão em um estado desconectado. Essa cota é aplicada a sessões conectadas a todos os nós remotos (computadores de destino). O valor padrão é 1000.

Propriedades dos parâmetros

Tipo:Int32
Default value:1000
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-MaxPersistenceStoreSizeGB

Especifica o tamanho máximo, em gigabytes, do repositório de persistência alocado para fluxos de trabalho executados na sessão. Quando o tamanho é excedido, o repositório de persistência é expandido para salvar todos os dados persistentes, mas um aviso é exibido e uma mensagem é gravada no log de eventos do fluxo de trabalho. O valor padrão é 10.

O repositório de persistência contém dados para todos os trabalhos de fluxo de trabalho. A capacidade de armazenar dados permite que os trabalhos sejam retomados sem perder estado.

Propriedades dos parâmetros

Tipo:Int64
Default value:10
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-MaxRunningWorkflows

Especifica esse número máximo de fluxos de trabalho que podem ser executados na sessão simultaneamente. O valor padrão é 30.

Propriedades dos parâmetros

Tipo:Int32
Default value:30
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-MaxSessionsPerRemoteNode

Especifica o número máximo de sessões que podem ser conectadas a cada nó remoto (computador de destino). O valor padrão é 5.

Propriedades dos parâmetros

Tipo:Int32
Default value:5
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-MaxSessionsPerWorkflow

Especifica o número máximo de sessões que podem ser criadas para dar suporte a cada fluxo de trabalho. O valor padrão é 5.

Propriedades dos parâmetros

Tipo:Int32
Default value:5
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-OutOfProcessActivity

Determina quais atividades permitidas (especificadas pelo parâmetro AllowedActivities) são executadas fora do processo. O valor padrão é InlineScript.

Propriedades dos parâmetros

Tipo:

String[]

Default value:InlineScript
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-PersistencePath

Especifica o local no disco onde o estado e os dados do fluxo de trabalho são armazenados. O armazenamento do estado e dos dados do fluxo de trabalho permite que os fluxos de trabalho sejam suspensos e retomados, além de se recuperarem de interrupções e falhas de rede.

O valor predefinido é $Env:LOCALAPPDATA\Microsoft\Windows\PowerShell\WF\PS.

Propriedades dos parâmetros

Tipo:String
Default value:False
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-PersistWithEncryption

Indica que o fluxo de trabalho criptografa os dados no repositório de persistência. Considere o uso desse recurso ao armazenar dados de persistência em um compartilhamento de rede.

Propriedades dos parâmetros

Tipo:SwitchParameter
Default value:$Env:LOCALAPPDATA\Microsoft\Windows\PowerShell\WF\PS
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-RemoteNodeSessionIdleTimeoutSec

Especifica por quanto tempo uma sessão conectada a um nó remoto (computador de destino) será mantida se estiver ociosa.

Insira um valor em segundos. O valor padrão é 60.

Propriedades dos parâmetros

Tipo:Int32
Default value:60
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-SessionThrottleLimit

Especifica quantas operações são criadas para dar suporte a todos os fluxos de trabalho iniciados na sessão. O valor padrão é 100.

Propriedades dos parâmetros

Tipo:Int32
Default value:100
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

-WorkflowShutdownTimeoutMSec

Especifica por quanto tempo a sessão é mantida depois que todos os fluxos de trabalho na sessão são suspensos à força. Quando o tempo limite expira, o Windows PowerShell fecha a sessão, mesmo que todos os fluxos de trabalho ainda não estejam suspensos.

Insira um valor em milissegundos. O valor padrão é 500.

Propriedades dos parâmetros

Tipo:Int32
Default value:500
Suporta carateres universais:False
NãoMostrar:False

Conjuntos de parâmetros

(All)
Position:Named
Obrigatório:False
Valor do pipeline:False
Valor do pipeline por nome de propriedade:False
Valor dos restantes argumentos:False

CommonParameters

Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.

Entradas

None

Não é possível canalizar objetos para este cmdlet.

Saídas

PSWorkflowExecutionOption

Notas

Quando o valor máximo definido por uma opção é excedido, o comando para criar outra instância na sessão falha, a menos que anotado na descrição do parâmetro. Por exemplo, se o valor de MaxConnectedSessions for 100. O comando para criar a 101ª sessão para um nó remoto (computador de destino) falha.

As propriedades de um objeto de configuração de sessão variam com as opções definidas para a configuração da sessão e os valores dessas opções. Além disso, as configurações de sessão que usam um arquivo de configuração de sessão têm propriedades adicionais.

Em particular, as propriedades das configurações de sessão que incluem um objeto PSWorkflowExecutionOptions variam com base nos valores da opção de fluxo de trabalho. Por exemplo, se a configuração da sessão incluir um objeto PSWorkflowExecutionOptions que defina um valor não padrão para a propriedade SessionThrottleLimit , a configuração da sessão terá uma propriedade SessionThrottleLimit. Caso contrário, não.