Agendas no Jitterbit Design Studio
Dentro do Jitterbit, as operações podem ser executadas de várias maneiras, como manualmente, automaticamente via uma chamada de API ou automaticamente através de uma agenda. Esta página aborda como configurar uma agenda para executar sua operação automaticamente.
As agendas contêm informações sobre quando uma operação será ativada automaticamente. O Jitterbit permite que você defina virtualmente qualquer tipo de agenda que precisar, como toda sexta-feira às 17h, a última sexta-feira de cada trimestre ou a cada hora durante um dia.
Atenção
Ao migrar um projeto, observe estas considerações para as agendas:
- Quando uma operação com uma agenda associada é transferida e implantada em um ambiente de destino pela primeira vez, a agenda é criada e habilitada por padrão, independentemente do estado de habilitação da agenda no ambiente de origem. Após a implantação inicial, o estado de habilitação da agenda no ambiente de destino permanece inalterado por transferências e implantações subsequentes. As agendas só podem ser habilitadas e desabilitadas através da aba Agendas no console de gerenciamento Projetos.
- Ao migrar uma operação de ambiente de origem sem uma agenda atribuída para uma operação de ambiente de destino com uma agenda atribuída, a operação resultante no ambiente de destino não terá uma agenda atribuída.
Criar uma agenda
Você pode optar por criar uma nova agenda por conta própria ou dentro de uma operação existente. As agendas devem ser atribuídas a uma operação para serem aplicáveis a essa operação. Para mais informações sobre como criar operações, veja Criar uma operação.
Dica
A partir da versão 9.0, outro lugar onde você pode criar e aplicar agendas é dentro do Console de Gerenciamento. As alterações de agenda feitas via o Console de Gerenciamento entram em vigor imediatamente, sem a necessidade de reimplantar o projeto no Harmony. Para mais informações, consulte Projetos.
Criar novo agendamento
Existem várias maneiras de criar um novo agendamento como um item de projeto independente dentro do Design Studio:
- Vá para Arquivo > Novo > Novo Agendamento.
- Na árvore à esquerda, clique com o botão direito em Agendamentos e selecione Novo Agendamento.
- Na barra de ferramentas superior, clique no ícone de agendamento
.
Nota
Se um agendamento for criado por meio de um dos métodos acima, observe que ele não está associado a nenhuma operação. Para usar o agendamento em uma operação, siga Usar agendamento existente em uma operação existente abaixo.
Criar novo agendamento em uma operação existente
Você também pode criar um novo agendamento como um item de projeto que já está atribuído a uma operação no Design Studio. Para fazer isso:
- Dentro de uma operação, clique na seta para baixo
ou clique com o botão direito no fundo da operação e selecione Agendamento > Selecionar Agendamento > Criar Novo Agendamento.
Usar agendamento existente em uma operação existente
Se você já tem uma operação e um agendamento criado, existem várias maneiras de adicionar um agendamento existente a uma operação existente dentro do Design Studio:
- Dentro de uma operação, clique na seta para baixo
ou clique com o botão direito no fundo da operação e selecione Agendamento > Selecionar Agendamento e escolha o agendamento existente.
- Dentro da operação, clique duas vezes no título da operação para abrir a janela Configurar Operação. Expanda a seção Agendamento, use o menu suspenso Agendamento para selecionar o agendamento existente.
- Arraste o agendamento existente da árvore à esquerda e solte-o no fundo da operação.
Cuidado
Se você estiver usando um cronograma existente em várias operações, tenha cuidado ao editar o cronograma, pois as alterações no cronograma afetarão todas as operações que utilizam esse cronograma.
Editar cronograma
Depois de criar um novo cronograma, a tela de configuração será aberta na visualização principal do Design Studio. Você pode voltar à tela de configuração a qualquer momento de uma das seguintes maneiras:
- Clique duas vezes no cronograma na árvore à esquerda.
- Dentro da operação, clique no ícone do cronograma
e selecione Editar Cronograma.
- Dentro da operação, clique na seta para baixo
ou clique com o botão direito no fundo da operação e selecione Cronograma > Editar Cronograma.
Configuração básica
A tela de configuração deve parecer semelhante ao exemplo abaixo. Cada opção configurável é explicada a seguir.
-
Nome: Insira um nome para o seu novo cronograma. Você pode querer dar ao cronograma um nome que reflita a frequência do cronograma ou, se usado para uma operação específica, que reflita o propósito do cronograma (por exemplo, "A Cada 5 Minutos" ou "Sincronização de Contatos").
-
Ocorrência: Selecione uma das três opções para os dias em que o cronograma deve iniciar a(s) operação(ões) à qual está atribuído:
-
Diário: O cronograma ativará a operação todos os dias ou a cada poucos dias. Quando esta opção é selecionada, as seguintes opções ficam disponíveis para configuração:
- A Cada [#] Dia(s): Insira um número de dia(s) entre as execuções da operação.
-
Semanal: O cronograma ativará a operação durante um conjunto específico de dias da semana. Quando esta opção é selecionada, as seguintes opções ficam disponíveis para configuração:
- A Cada [#] Semana(s): Insira um número de semana(s) entre as execuções da operação.
- [Dom, Seg, Ter, Qua, Qui, Sex, Sáb]: Marque as caixas ao lado dos dia(s) da semana em que você deseja que a operação seja executada.
-
-
Mensal: O cronograma ativará a operação mensalmente. Quando esta opção for selecionada, escolha uma das duas opções que se tornam disponíveis para configuração:
- Dia [#] de Cada [#] Mês(es): Insira o dia do mês e o número de mês(es) entre as execuções da operação.
- O [1º, 2º, 3º, 4º ou Último] [Dia da Semana] de Cada [#] Mês: Use os menus suspensos para selecionar qual dia do mês e insira o número de mês(es) entre as execuções da operação.
-
Frequência Diária: Selecione uma das duas opções para os horários em que o cronograma deve iniciar a operação nos dias em que ela é executada:
-
Ocorre uma vez às [hh:mm] [AM/PM]: O cronograma ativará a operação apenas uma vez no horário especificado. Use os menus suspensos para selecionar a(s) hora(s), minuto(s) e o período do dia em que você deseja que a operação seja executada.
-
Ocorre a cada [#] [Minuto(s)/Hora(s)] Começando às [hh:mm] [AM/PM] e Terminando às [hh:mm] [AM/PM]: O cronograma reativará repetidamente a operação pelo período de tempo especificado ao longo do dia. Insira um número correspondente à seleção do menu suspenso de minuto(s) ou hora(s) em que você deseja que a operação seja executada, juntamente com as seleções de qualquer horário ao longo do dia que você deseja limitar a operação para ser executada.
Nota
Os fusos horários são discutidos abaixo em Fusos horários da operação.
-
-
Duração: Configure as datas de duração para o cronograma.
Nota
As datas de início e fim em um cronograma são inclusivas, o que significa que o cronograma estará ativo durante a parte restante do dia tanto na data de início quanto na data de fim.
- Começando em: Por padrão, o cronograma estará ativo a partir da data atual. Se você quiser especificar uma data de início diferente, clique no ícone do calendário
para abrir um seletor de data do calendário e selecionar a data desejada.
- Terminando em: Por padrão, a(s) operação(ões) à qual o cronograma está atribuído será(ão) executada(s) indefinidamente conforme o cronograma. Se você quiser especificar uma data de fim, clique no ícone do calendário
para abrir um seletor de data do calendário e selecionar a data desejada. O cronograma estará ativo até o final da data de fim.
- Começando em: Por padrão, o cronograma estará ativo a partir da data atual. Se você quiser especificar uma data de início diferente, clique no ícone do calendário
Dica
Após configurar um cronograma e atribuí-lo a uma operação, é uma prática recomendada incluir uma mensagem de email de Falha na operação agendada. Veja Criar uma mensagem de email para mais informações.
Fusos horários da operação
Ao configurar um cronograma, o campo Frequência Diária não exibe o fuso horário em que a operação será executada. O fuso horário em que a operação será executada depende do agente que está executando a operação, a menos que a configuração Substituir Fuso Horário do Agente do Cronograma esteja habilitada nas políticas da sua organização:
-
Fuso Horário do Agente
- Agentes em Nuvem: Todos os agentes em nuvem estão em UTC.
- Agentes Privados: Os fusos horários dos agentes privados são determinados pelo fuso horário do sistema operacional do agente privado. É altamente recomendável que todos os agentes em um grupo de agentes privados estejam operando no mesmo fuso horário, ou os horários em que um cronograma configurado inicia a operação podem ser imprevisíveis, dependendo do agente específico utilizado.
Ao usar a versão do agente 10.85 / 11.23 ou posterior, e o agente estiver usando um fuso horário que observa o horário de verão, as seguintes ações ocorrem durante uma mudança de horário de verão:
-
Quando um cronograma diário é definido entre 2 - 3 AM, a operação agendada será executada às 3 AM no segundo domingo de março.
-
Quando um cronograma diário é definido entre 1 - 2 AM, a operação agendada será executada na segunda instância de 1 AM no primeiro domingo de novembro.
Um problema conhecido existe para os cenários acima ao usar a versão do agente 10.84 / 11.22 e anteriores.
Dica
Para consistência do cronograma, é recomendado usar um fuso horário que não observe o horário de verão, como UTC (agentes em nuvem usam UTC por padrão). Se estiver usando um agente privado, você pode usar a configuração Substituir Fuso Horário do Agente do Cronograma e selecionar Etc/UTC.
-
Substituir Fuso Horário do Agente de Agendamento
- Se a configuração Substituir Fuso Horário do Agente de Agendamento estiver habilitada nas políticas da sua organização, o fuso horário selecionado determinará o fuso horário em que todos os agendamentos atuais e futuros em uma organização serão executados.
Configuração avançada com scripting
Se as opções disponíveis na interface do usuário, conforme descrito acima em Configuração básica, não atenderem às suas necessidades de negócios, você pode realizar uma configuração adicional do agendamento usando scripting.
Nota
Se você tiver a configuração Substituir Fuso Horário do Agente de Agendamento habilitada nas políticas da sua organização, quaisquer scripts que utilizem funções de data e hora conforme descrito aqui não serão substituídos pelo seu fuso horário selecionado.
Como exemplo, um caso de uso comum pode ser criar um agendamento para executar a operação no último dia do mês. Os seguintes passos descrevem esse caso de uso:
-
Crie um novo agendamento e configure-o para ser executado todos os dias em um horário apropriado, conforme descrito anteriormente nesta página.
-
Crie uma nova operação com um item de projeto de script Jitterbit, conforme descrito em Criar um script.
-
Atribua o agendamento à operação de script que você acabou de criar.
-
Abra o script e insira o seguinte para verificar se é o último dia do mês e executar uma operação se for verdadeiro:
<trans> if(DayOfMonth(LastDayOfMonth(Now()))==DayOfMonth(Now()), RunOperation("<TAG>Operations/Some Operation to Run</TAG>") ); </trans>
-
As operações devem parecer semelhantes ao seguinte uma vez que esses passos estejam completos:
Definir política de agendamento
Sempre que um novo agendamento é criado, ele é definido por padrão para que qualquer operação seja ignorada no caso de uma instância previamente agendada da mesma operação ainda estar em execução. Esta é a melhor prática recomendada na maioria das situações, mas pode ser alterada para permitir que uma operação comece mesmo que uma instância previamente agendada ainda esteja em execução.
Isso deve ser feito apenas se você tiver um requisito especial para fazê-lo. Se você fizer essa alteração, deve ter certeza de que ter operações simultâneas não será prejudicial, processando potencialmente os mesmos registros de dados de origem várias vezes.
Essa configuração pode ser acessada a partir da operação das seguintes maneiras:
- Dentro da operação, clique no ícone de agendamento
e selecione Política de Agendamento > Pular execução se a operação agendada anteriormente ainda estiver em execução ou Iniciar mesmo se a operação agendada anteriormente ainda estiver em execução.
- Dentro da operação, clique na seta para baixo
ou clique com o botão direito no fundo da operação e selecione Agendar > Política de Agendamento > Pular execução se a operação agendada anteriormente ainda estiver em execução ou Iniciar mesmo se a operação agendada anteriormente ainda estiver em execução.
- Dentro da operação, clique duas vezes no título da operação para abrir a janela Configurar Operação. Expanda a seção Agendar, use o menu suspenso Agendar para selecionar o agendamento apropriado e selecione Pular execução se a operação agendada anteriormente ainda estiver em execução ou Iniciar mesmo se a operação agendada anteriormente ainda estiver em execução.
Se estiver usando agentes privados, uma avaliação adicional deve ser feita para garantir que agendamentos agressivos não sobrecarreguem seu grupo de agentes, causando um acúmulo de operações.
Os agentes privados têm como padrão a capacidade de executar até duas vezes a contagem de CPU por máquina de agente. Portanto, se sua máquina de agente privada tiver 4 núcleos de CPU, você poderá processar até 8 operações simultâneas.
Ao avaliar seus requisitos de negócios, algumas de suas operações podem ser mais dependentes de tempo do que outras. Se várias operações não críticas acumularem sua fila de agentes, suas operações mais críticas podem ser afetadas. Para evitar isso, basta determinar o número de operações que seu grupo de agentes pode processar simultaneamente e, em seguida, equilibrar isso com a prioridade de negócios e a duração de execução de suas operações agendadas.
Habilitar ou desabilitar agendamento
Uma vez que você tenha atribuído um agendamento a uma operação, pode escolher desabilitá-lo ou reabilitá-lo (se desabilitado) remotamente através do Painel de Gerenciamento na página de Projetos.
Aviso
Tenha cuidado para lembrar se você desabilitar seu agendamento, pois essa funcionalidade está disponível apenas dentro do Painel de Gerenciamento e pode não ser óbvio dentro do Design Studio que o agendamento foi desabilitado remotamente.
Na página de Projetos, selecione uma linha na tabela de Projetos para exibir abas adicionais na parte inferior da página. Você pode habilitar ou desabilitar um agendamento para uma única operação ou para todo o projeto da seguinte forma:
-
Operações: Dentro da aba Operações, a coluna Status exibe o status de quaisquer agendamentos atribuídos à operação. Clique no botão de alternância para ativar ou desativar um agendamento existente, efetivamente habilitando ou desabilitando o agendamento para essa operação.
-
Agendamentos: Dentro da aba Agendamentos, a coluna Agendado exibe o status de quaisquer agendamentos atribuídos às operações dentro do projeto. Clique no botão de alternância para ativar ou desativar um agendamento existente, efetivamente habilitando ou desabilitando o agendamento para todo o projeto.
Cuidado
Habilitar ou desabilitar um agendamento que é utilizado em múltiplas operações afetará cada operação que utiliza o agendamento.
Remover agendamento
Se você tiver um agendamento que está atribuído a uma operação, pode removê-lo da operação das seguintes maneiras. Isso não excluirá o agendamento como um item do projeto, mas simplesmente o desassociará da operação.
- Dentro da operação, clique no ícone de agendamento
e selecione Remover Agendamento.
- Dentro da operação, clique na seta para baixo
ou clique com o botão direito no fundo da operação e selecione Agendamento > Remover Agendamento.
- Dentro da operação, clique duas vezes no título da operação para abrir a janela Configurar Operação. Expanda a seção Agendamento, use o menu suspenso Agendamento para selecionar (nenhum).
Solucionar problemas de agendamento
Se o seu agendamento não estiver funcionando como esperado, verifique os seguintes itens para ajudar a solucionar o problema:
-
Você implantou a operação à qual o agendamento está atribuído?
Os agendamentos devem ser atribuídos a uma operação para que possam ser acionados. Uma vez que você tenha salvo um agendamento em uma operação, ele não terá efeito até que tenha sido implantado. -
Seu agendamento está habilitado?
Os agendamentos podem ser desativados e reativados apenas a partir do Console de Gerenciamento da Web. Verifique a página Projetos nas abas Operações e Agendamentos para garantir que seu agendamento esteja habilitado. -
Você sabe em qual fuso horário seu agendamento está?
Os fusos horários são discutidos em Fusos horários de operação. -
Se você estiver usando um agente privado, o serviço de agendamento está em execução?
Na máquina onde o agente privado está instalado, verifique se o Jitterbit Scheduler e o Jitterbit Scheduler Service estão em execução. No Windows, isso pode ser verificado através do Gerenciador de Tarefas na aba Processos. No Linux e Docker, use o comandojitterbit status
. -
Se você estiver usando um agente privado, agendamentos agressivos estão sobrecarregando seu grupo de agentes?
Se estiver usando agentes privados, uma avaliação adicional deve ser feita para garantir que agendamentos agressivos não sobrecarreguem seu grupo de agentes, causando um backlog de operações.Agentes privados têm como padrão a capacidade de executar até duas vezes sua contagem de CPI por máquina de agente. Portanto, se sua máquina de agente privado tiver 4 núcleos de CPU, você poderá processar até 8 operações simultâneas.
Ao avaliar suas necessidades de negócios, algumas de suas operações podem ser mais dependentes de tempo do que outras. Se várias operações não críticas acumularem na fila do seu agente, suas operações mais críticas podem ser afetadas. Para evitar isso, basta determinar o número de operações que seu grupo de agentes pode processar simultaneamente e, em seguida, equilibrar isso em relação à prioridade de negócios e à duração de execução de suas operações agendadas.