New-PSWorkflowExecutionOption
Cria um objeto que contém opções de configuração de sessão para sessões de fluxo de trabalho.
Sintaxe
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 New-PSWorkflowExecutionOption
cmdlet 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
é gerado como o valor do parâmetro SessionTypeOption de cmdlets que criam ou alteram uma configuração de sessão, como os Register-PSSessionConfiguration
cmdlets e Set-PSSessionConfiguration
.
Cada parâmetro do New-PSWorkflowExecutionOption
cmdlet representa uma propriedade do objeto de opção de configuração de sessão de fluxo de trabalho que o cmdlet retorna. Se um parâmetro for omitido, o cmdlet cria o objeto com um valor padrão para a propriedade.
O New-PSWorkflowExecutionOption
cmdlet faz parte do recurso Fluxo de Trabalho do Windows PowerShell.
Também é possível adicionar parâmetros comuns de fluxo de trabalho para 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
Esse comando usa o New-PSWorkflowExecutionOption
cmdlet 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 Get-PSSessionConfiguration
cmdlet para obter a configuração da sessão ITWorkflows e exibir Format-List
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 do host de atividade é mantido depois que o processo se torna ocioso. Quando o intervalo expira, o processo é encerrado.
Insira um valor em segundos. O valor padrão é 60.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 60 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-AllowedActivity
Especifica as atividades que têm permissão para serem executadas na sessão.
Insira nomes de atividades qualificadas para namespace, como Microsoft.Powershell.HyperV.Activities.*
.
Há suporte para caracteres curinga. O valor padrão, PSDefaultActivities, inclui as atividades internas do Windows Workflow Foundation e as atividades que representam os principais cmdlets do Windows PowerShell.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | PSDefaultActivities |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | 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
.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | True |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxActivityProcesses
Especifica o número máximo de processos que podem ser criados na sessão para oferecer suporte a atividades de fluxo de trabalho. O valor padrão é 5.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 5 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxConnectedSessions
Especifica o número máximo de sessões remotas que estão em um estado operacional. Essa cota é aplicada as sessões conectadas a todos os nós remotos (computadores de destino). O valor padrão é 100.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 100 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxDisconnectedSessions
Especifica o número máximo de sessões remotas que estão em um estado desconectado. Essa cota é aplicada as sessões conectadas a todos os nós remotos (computadores de destino). O valor padrão é 1000.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 1000 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxPersistenceStoreSizeGB
Especifica o tamanho máximo, em gigabytes, do repositório de persistência alocada para fluxos de trabalho executados na sessão. Quando o tamanho for 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 continue sem perder o estado.
Tipo: | Int64 |
Cargo: | Named |
Valor padrão: | 10 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxRunningWorkflows
Especifica o número máximo de fluxos de trabalho que podem ser executados na sessão simultaneamente. O valor padrão é 30.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 30 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxSessionsPerRemoteNode
Especifica o número máximo de sessões que podem ser conectados a cada nó remoto (computador de destino). O valor padrão é 5.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 5 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-MaxSessionsPerWorkflow
Especifica o número máximo de sessões que podem ser criadas para oferecer suporte a cada fluxo de trabalho. O valor padrão é 5.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 5 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-OutOfProcessActivity
Determina quais atividades permitidas (especificadas pelo parâmetro AllowedActivities ) são executadas fora do processo. O valor padrão é InlineScript.
Tipo: | String[] |
Cargo: | Named |
Valor padrão: | InlineScript |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-PersistencePath
Especifica o local no disco onde o estado de fluxo de trabalho e os dados são armazenados. Armazenar o estado de fluxo de trabalho e dados permite que os fluxos de trabalho sejam suspensos e retomados, e recuperados de interrupções e falhas de rede.
O valor padrão é $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS
.
Tipo: | String |
Cargo: | Named |
Valor padrão: | False |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-PersistWithEncryption
Indica que o fluxo de trabalho criptografa os dados no repositório de persistência. Considere utilizar esse recurso ao armazenar dados de persistência em um compartilhamento de rede.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | $env:LocalAppData\Microsoft\Windows\PowerShell\WF\PS |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-RemoteNodeSessionIdleTimeoutSec
Especifica quanto tempo uma sessão que está conectada a um nó remoto (computador de destino) é mantida se estiver ociosa.
Insira um valor em segundos. O valor padrão é 60.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 60 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-SessionThrottleLimit
Especifica quantas operações são criadas para oferecer suporte a todos os fluxos de trabalho iniciados na sessão. O valor padrão é 100.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 100 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-WorkflowShutdownTimeoutMSec
Especifica 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 encerra a sessão, mesmo que todos os fluxos de trabalho ainda não tenham sido suspensos.
Insira um valor em milissegundos. O valor padrão é 500.
Tipo: | Int32 |
Cargo: | Named |
Valor padrão: | 500 |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
Entradas
None
Você não pode canalizar objetos para esse cmdlet.
Saídas
Observações
Quando o valor máximo definido por uma opção for excedido, o comando para criar outra instância na sessão falha, a menos que esteja indicado na descrição do parâmetro. Por exemplo, se o valor de MaxConnectedSessions for 100. Falha no comando para criar a sessão de 101 para um nó remoto (computador de destino).
As propriedades de um objeto de configuração de sessão variam de acordo 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 de acordo com os valores de opção de fluxo de trabalho. Por exemplo, se a configuração da sessão incluir um objeto PSWorkflowExecutionOptions que define um valor não padrão para a propriedade SessionThrottleLimit , a configuração da sessão terá uma propriedade SessionThrottleLimit . Caso contrário, isso não ocorrerá.