Compartilhar via


Ações de pacote na distribuição de conteúdo

Este artigo ajuda você a entender as ações de pacote na distribuição de conteúdo.

Versão original do produto: Configuration Manager branch atual, Microsoft System Center 2012 Configuration Manager, Microsoft System Center 2012 R2 Configuration Manager

Introdução

As ações de pacote na distribuição de conteúdo são divididas no seguinte:

  • Distribute

    A primeira grande ação relativa à distribuição de conteúdo é a ação Distribuir. Isso se refere à distribuição inicial de um pacote a um ponto de distribuição. Isso é disparado pelo assistente Distribuir Conteúdo no console Configuration Manager. Isso transferirá todos os arquivos em um pacote para os pontos de distribuição de destino, excluindo aqueles que já estão presentes na biblioteca de conteúdo do DP como parte de outro pacote. Se o pacote contiver arquivos que já estão na biblioteca de conteúdo no ponto de distribuição, esses arquivos serão compartilhados entre vários pacotes.

  • Atualizar

    A segunda ação principal é a ação Atualizar. Normalmente, isso é usado quando um pacote é alterado e todos os pontos de distribuição aos quais ele é distribuído precisam do conteúdo atualizado. Isso é disparado com a ação Atualizar Pontos de Distribuição no console. Isso transferirá os arquivos alterados para todos os pontos de distribuição. Arquivos inalterados não serão transferidos. Se um arquivo for removido do pacote na versão atualizada, ele será excluído do pacote no ponto de distribuição (desde que nenhum outro pacote que compartilhe o arquivo esteja no DP).

  • Redistribuir

    A terceira ação principal é a ação Redistribuir, disparada com Redistribuir no console Configuration Manager. Isso transferirá todo o conteúdo para um ponto de distribuição específico. Os arquivos serão transferidos e substituídos mesmo que já estejam presentes na biblioteca de conteúdo no ponto de distribuição. A principal finalidade da ação Redistribuir é corrigir quaisquer inconsistências que possam existir na biblioteca de conteúdo.

Criar um pacote

As etapas a seguir explicam o fluxo de eventos quando você cria um novo pacote do console de administrador que ainda não foi distribuído a nenhum DPs:

Etapa 1: Administração console cria uma instância da SMS_PackageWMI classe

Depois que o administrador cria o pacote no console, o console de administração cria uma instância da SMS_Package classe WMI no namespace do Provedor de SMS para o pacote recém-criado. SMSProv.log mostra o seguinte:

Provedor de SMS 4680 (0x1248) CExtProviderClassObject::D oPutInstanceInstanceInstance~
Auditoria do Provedor de SMS 4680 (0x1248): o usuário CONTOSO\Administração criou uma instância da classe SMS_Package.~
Notificação da instância de inserção processada do Provedor de SMS 816 (0x330) para: SMS_Package.PackageID="PackageID"~

Quando essa instância WMI é criada, o Provedor de SMS insere uma linha no modo de exibição SMSPackages no banco de dados:

insert SMSPackages (PkgID, Name, Version, Language, Manufacturer, Description, ISVString, Hash, NewHash, Source, SourceSite, StoredPkgPath, RefreshSchedule, LastRefresh, StoredPkgVersion, ShareName, PreferredAddress, StorePkgFlag, ShareType, HashVersion,Architecture, ImagePath,Permission, UseForcedDisconnect, ForcedRetryDelay, DisconnectDelay, IgnoreSchedule, Priority, PkgFlags, MIFFilename, MIFPublisher, MIFName, MIFVersion, SourceVersion, SourceDate, SourceSize, SourceCompSize, ImageFlags, PackageType, AlternateContentProviders, SourceLocaleID,  TransformReadiness, TransformAnalysisDate, UpdateMask, UpdateMaskEx, Action, DefaultImage) values (N'PackageID', N'Dummy1', N'', N'',N'',N'',N'',N'',N'',N'\\CS1SITE\SOURCE\Packages\Dummy1',N'CS1',N'',N'',N'04/10/1970 06:35:00', 0, N'',N'', 2, 1, 1, N'', N'', 15, 0, 2, 5, 0, 2, 16777216, N'',N'',N'',N'', 1, N'05/16/2016 15:22:12', 0, 0, 0, 0, N'', 1033, 0, N'1980/01/01 00:00:00', 0, 0, 2, 0)

Depois que a linha é inserida, um gatilho no modo de exibição insere uma linha nas tabelas eSMS_Packages_L.SMSPackages_G Isso, por sua vez, faz com que um gatilho na SMSPackages_G tabela insira uma linha na PkgNotification tabela. A linha na tabela é usada para notificar o PkgNotification DistMgr para processar o pacote e essa notificação é fornecida ao DistMgr pelo SMSDBMON componente.

insert PkgNotification (PkgID, Priority, Type, TimeKey) values (N'PackageID', 2, 2, GetDate())

Etapa 2: SMSDBMON detecta uma alteração e notifica o DistMgr para processar o pacote soltando um <PackageID>. Arquivo PKN

O SMSDBMON detecta uma alteração na tabela, o PkgNotification que faz com que ela solte um <PackageID>. Arquivo PKN no DistMgr.box para instruir o DistMgr a processar o pacote:

SMS_DATABASE_NOTIFICATION_MONITOR RCV 3240 (0xca8): INSERT on PkgNotification for PkgNotify_Add [<PackageID>][850902]
SMS_DATABASE_NOTIFICATION_MONITOR 3240 (0xca8) SND: E:\ConfigMgr\inboxes\distmgr.box\<PackageID>. PKN [850902]

Etapa 3: DistMgr processa o pacote no site de origem do pacote

O DistMgr processa o pacote depois de detectar o arquivo PKN em DistMgr.box. O processamento DistMgr é executado por vários threads.

  1. O thread DistMgr main cria um thread de processamento de pacote.

    O thread DistMgr principal acorda, adiciona o pacote à fila de processamento de pacotes e cria um thread de processamento de pacotes para processar o pacote:

    SMS_DISTRIBUTION_MANAGER 2624 (0xa40) Propriedades de pacote encontradas atualizadas notificação para o pacote 'PackageID'
    SMS_DISTRIBUTION_MANAGER 2624 (0xa40) Adicionando o pacote 'PackageID' à fila de processamento de pacotes.
    SMS_DISTRIBUTION_MANAGER 2624 (0xa40) ~Atualmente usando 0 de 3 threads de processamento de pacote permitidos.
    SMS_DISTRIBUTION_MANAGER 2624 (0xa40) ~Início do thread de processamento de pacotes para pacote 'PackageID', ID do thread = 0x16A8 (5800)

  2. O thread de processamento de pacote cria um pacote instantâneo e grava conteúdo na biblioteca de conteúdo.

    O thread de processamento de pacote (iD do thread 5800 nesse caso) começa a processar o pacote e cria um pacote instantâneo. Depois de criar o pacote instantâneo, esse thread também grava o conteúdo do pacote na biblioteca de conteúdo no servidor do site.

    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) STATMSG: ID=2300 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=CS1SITE. CONTOSO.COM SITE=CS1 PID=1904 TID=5800 GMTDATE=Mon 16 de maio 14:33:55.691 2016 ISTR0="Dummy1" ISTR1="<PackageID>" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="<PackageID>"
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~Pacote de processamento <PackageID> (SourceVersion:1; StoredVersion:0)
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) Começar a adicionar pacote <PackageID>...
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~A ação do pacote é 2, a Máscara de Atualização é 0 e UpdateMaskEx é 0.
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~CDistributionSrcSQL::UpdateAvailableVersion PackageID=<PackageID>, Version=1, Status=2300
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) Levando instantâneo de pacote para <packageID> da origem \\CS1SITE\SOURCE\Packages\Dummy1
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) O tamanho do pacote <PackageID>, versão 1 é 204800 KBytes
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) Definição de pacote de gravação para <PackageID>
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~Assinaturas rdc criadas com êxito para pacote PackageID versão 1
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) Criando hash para o algoritmo 32780
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) O hash do algoritmo 32780 é <HashString>
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) O hash de assinatura do RDC para o algoritmo 32780 é <HashString>
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~Adição desses conteúdos ao pacote PackageID versão 1.
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) STATMSG: ID=2376 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=CS1SITE. CONTOSO.COM SITE=CS1 PID=1904 TID=5800 GMTDATE=Mon 16 de maio 14:34:04.611 2016 ISTR0="<PackageID>" ISTR1="" ISTR1="ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="<PackageID>"

  3. O thread de processamento de pacote replica o pacote para outros sites.

    O thread de processamento de pacotes replica o pacote para os outros sites na hierarquia. As informações de metadados do pacote são replicadas para outros sites por meio da replicação de banco de dados, enquanto os arquivos de pacote são replicados usando a replicação de arquivo. No entanto, os arquivos de pacote só serão enviados para um site se pelo menos um DP nesse site for adicionado ao pacote. Os arquivos de pacote são compactados antes de serem enviados para outro site. Nesse caso, como nenhum DPs é direcionado, apenas metadados de pacote são replicados para outros sites, mas os arquivos de pacote não são replicados.

    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~PackageID <> não tem um remetente preferencial.
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) Um programa para package <PACKAGEID> foi adicionado ou removido, portanto, ele precisa ser replicado para todos os sites filho.
    SMS_DISTRIBUTION_MANAGER pacote 5800 (0x16a8) PackageID <> é novo ou alterado, replicando para todos os sites aplicáveis.
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~CDistributionSrcSQL::UpdateAvailableVersion PackageID=<PackageID>, Version=1, Status=2301
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~StoredPkgVersion (1) do pacote <PackageID>. StoredPkgVersion no banco de dados é 1.
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~SourceVersion (1) do package <PACKAGEID>. SourceVersion no banco de dados é 1.
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~Adição desses conteúdos ao pacote <PackageID> versão 1.

  4. O thread de processamento de pacote sai.

    O thread de processamento de pacote sai após a conclusão do processamento do pacote e gera uma mensagem de status com a ID 2301, o que significa "PackageNAME> (ID do pacote = <PKGID>) com êxito no Gerenciador < de Distribuição).

    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) STATMSG: ID=2301 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=CS1SITE. CONTOSO.COM SITE=CS1 PID=1904 TID=5800 GMTDATE=Mon 16 de maio 14:34:06.736 2016 ISTR0="Dummy1" ISTR1="<PackageID>" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="<PackageID>"
    SMS_DISTRIBUTION_MANAGER 5800 (0x16a8) ~Sair do thread de processamento de pacotes para packageID<>.

Etapa 4: (se aplicável) o DRS replica o pacote para outros sites

Se houver outros sites na hierarquia, as informações de metadados de pacote serão replicadas para outros sites por meio da replicação de banco de dados. Depois que as informações do pacote são replicadas, uma linha na SMSPackages_G tabela é inserida que dispara uma inserção na PkgNotification tabela.

Etapa 5: (se aplicável) O SMSDBMON no site de recebimento notifica o DistMgr soltando um <PackageID>. Arquivo PKN

No site de recebimento, o SMSDBMON detecta uma alteração na PkgNotification tabela que faz com que ela solte um <PackageID>. Arquivo PKN no DistMgr.box para instruir o DistMgr a processar o pacote:

SMS_DATABASE_NOTIFICATION_MONITOR RCV 3120 (0xc30): INSERT on PkgNotification for PkgNotify_Add [<PackageID> ][1035019]
SMS_DATABASE_NOTIFICATION_MONITOR 3120 (0xc30) SND: E:\ConfigMgr\inboxes\distmgr.box\<PackageID>. PKN [1035019]

Etapa 6: (se aplicável) DistMgr no site de recebimento processa o pacote

No site de recebimento, depois de receber o . Arquivo PKN , DistMgr acorda para processar o pacote.

  1. O thread DistMgr main cria um thread de processamento de pacote.

    O thread DistMgr main adiciona o pacote à fila de processamento de pacotes e cria um thread de processamento de pacotes:

    SMS_DISTRIBUTION_MANAGER 3648 (0xe40) Propriedades de pacote encontradas atualizadas notificação para o pacote '<PackageID>'
    SMS_DISTRIBUTION_MANAGER 3648 (0xe40) Adicionar pacote '<PackageID>' à fila de processamento de pacotes.
    SMS_DISTRIBUTION_MANAGER 3648 (0xe40) ~Atualmente usando 0 de 3 threads de processamento de pacote permitidos.
    SMS_DISTRIBUTION_MANAGER 3648 (0xe40) ~Início do thread de processamento de pacotes para pacote '<PackageID>', ID do thread = 0x1378 (4984)

  2. O thread de processamento de pacote processa o pacote.

    Nesse caso, não há nada para esse thread fazer, pois nenhum DPs foi alvo.

    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) STATMSG: ID=2300 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=4224 TID=4984 GMTDATE=Mon 16 de maio 14:36:08.809 2016 ISTR0="Dummy1" ISTR1="<PackageID>" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="<PackageID>"
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~Processing packageID <> (SourceVersion:1; StoredVersion:0)
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) Comece a adicionar pacote <PackageID>...
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~A ação do pacote é 2, a Máscara de Atualização é 0 e UpdateMaskEx é 0.
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~Criado/atualizado com êxito o pacote <PackageID>
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) STATMSG: ID=2311 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=4224 TID=4984 GMTDATE=Mon 16 de maio 14:36:09.486 2016 ISTR0="PackageID" ISTR1="" ISTR1="ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="<PackageID>"
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~Gatilho do provedor de política criado para ID <PackageID>
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~PackageID <> não tem um remetente preferencial.
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~CDistributionSrcSQL::UpdateAvailableVersion PackageID=<PackageID>, Version=1, Status=2301
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~StoredPkgVersion (0) do pacote <PackageID>. StoredPkgVersion no banco de dados é 0.
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~SourceVersion (1) do packageID<>. SourceVersion no banco de dados é 1.
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) STATMSG: ID=2301 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=4224 TID=4984 GMTDATE=Mon 16 de maio 14:36:10.061 2016 ISTR0="Dummy1" ISTR1="<PackageID>" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="<PackageID>"
    SMS_DISTRIBUTION_MANAGER 4984 (0x1378) ~Sair do thread de processamento de pacotes para packageID<>.

Distribuir um pacote para o DP entre sites

As etapas a seguir descrevem o fluxo de eventos quando um pacote é distribuído a um DP no site primário, mas o servidor de site primário em questão não contém uma cópia desse pacote na biblioteca de conteúdo. Esse pacote foi criado no site de administração central e, como resultado, o site de administração central é o site de origem do pacote:

No site de origem do pacote

Etapa 1: o console de administração adiciona o DP ao pacote chamando o AddDistributionPoints método na SMS_PackageWMI classe

Depois que o administrador distribui o pacote para um DP do console, o console de administração chama o AddDistributionPoints método da SMS_Package classe para adicionar o DP especificado ao pacote. SMSProv.log mostra o seguinte:

Contexto do Provedor de SMS 4616 (0x1208): SMSAppName=Configuration Manager Console do Administrador~
Provedor de SMS 4616 (0x1208) ExecMethodAsync : SMS_Package.PackageID="<PackageID>"::AddDistributionPoints~
Provedor de SMS 4616 (0x1208) CExtProviderClassObject::D oExecuteMethod AddDistributionPoints~
Auditoria do Provedor de SMS 4616 (0x1208): CONTOSO\Administração de usuário chamado de método auditado de uma instância da classe SMS_Package.~

Quando esse método é chamado, o Provedor de SMS insere uma linha PkgServers com Action definido como 2 (ADD).

insert PkgServers (PkgID, NALPath, SiteCode, SiteName, SourceSite, LastRefresh, RefreshTrigger, UpdateMask, Action) select N'PackageID', N'['Display=\\PS1SITE.CONTOSO.COM\']MSWNET:['SMS_SITE=PS1']\\PS1SITE.CONTOSO.COM\', N'PS1', Sites.SiteName, N'CS1', N'04/10/1970 06:35:00', 0, 0, 2  from Sites where SiteCode = N'PS1'

Depois que uma linha é inserida no PkgServers, o Provedor de SMS também insere uma linha na PkgNotification tabela. A linha na tabela é usada para notificar o PkgNotification DistMgr para processar o pacote e essa notificação é fornecida ao DistMgr pelo SMSDBMON componente.

insert PkgNotification (PkgID, Priority, Type, TimeKey) values (N'PackageID', 2, 4, GetDate())

Etapa 2: SMSDBMON detecta a alteração do pacote e notifica o DistMgr soltando um <PackageID>. Arquivo PKN em DistMgr.box

O SMSDBMON detecta uma alteração na PkgNotification tabela que faz com que ela solte um <PackageID>. Arquivo PKN no DistMgr.box para instruir o DistMgr a processar o pacote.

SMS_DATABASE_NOTIFICATION_MONITOR RCV 4944 (0x1350): INSERT em PkgNotification for PkgNotify_Add [<PackageID> ][850967]
SMS_DATABASE_NOTIFICATION_MONITOR SND 4944 (0x1350): E:\ConfigMgr\inboxes\distmgr.box\<PackageID>. PKN [850967]

Etapa 3: DistMgr acorda para processar o pacote após receber o arquivo PKN

  1. O thread DistMgr main cria o thread de processamento de pacotes.

    O thread DistMgr main adiciona o pacote à fila de processamento de pacotes e cria um thread de processamento de pacotes.

    SMS_DISTRIBUTION_MANAGER 2496 (0x9c0) Adicionar pacote '<PackageID>' à fila de processamento de pacotes.
    SMS_DISTRIBUTION_MANAGER 2496 (0x9c0) ~Atualmente usando 0 de 3 threads de processamento de pacote permitidos.
    SMS_DISTRIBUTION_MANAGER 2496 (0x9c0) ~Iniciado o thread de processamento de pacotes para pacote '<PackageID>', ID do thread = 0x1164 (4452)

  2. O thread de processamento de pacote processa as ações do pacote.

    O thread de processamento de pacote processa as ações de pacote para adicionar/atualizar/remover o pacote do DP. Nesse caso, o site de origem do pacote é o site de administração central e não há ações de pacote a serem processadas porque o site de administração central não contém DPs. Em um site em que há ações de pacote a serem processadas, o thread de processamento de pacotes cria threads DP para executar essas ações e aguarda a saída dos threads DP antes de passar para a Etapa 3-3.

    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~Processing packageID <> (SourceVersion:1; StoredVersion:1)
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) Nenhuma ação especificada para o pacote <PackageID>, no entanto, pode haver alterações de servidor de pacote para este pacote.

  3. O thread de processamento de pacote cria um mini-trabalho para enviar a cópia compactada do pacote para o site de destino.

    Esse mini-trabalho é processado pelo agendador para criar uma solicitação de envio para o Remetente transferir a cópia compactada do pacote para o site de destino:

    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~PackageID <> não tem um remetente preferencial.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~Precisa enviar o pacote compactado para packageID <> para o site PS1
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~Enviando uma cópia do pacote <PackageID> para o site PS1
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~O site de relatórios do site PS1 é este site.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~Use a unidade E para armazenar o pacote compactado.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~Configurando a raiz de transferência CMiniJob para E:\SMSPKG\<PackageID>. PCK.1
    SMS_DISTRIBUTION_MANAGER contagem de ref incrementado 4452 (0x1164) no arquivo E:\SMSPKG\<PackageID>. PCK.1, contagem = 2
    SMS_DISTRIBUTION_MANAGER contagem de ref decrementesd 4452 (0x1164) no arquivo E:\SMSPKG\<PackageID>. PCK.1, contagem = 1
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~Criado minijob para enviar cópia compactada do pacote <PackageID> para o site PS1. Raiz de transferência = E:\SMSPKG\<PackageID>. PCK.1.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) As propriedades do pacote e/ou do programa para PackageID> de pacote <não foram alteradas, precisam determinar quais sites precisam de informações atualizadas do pacote.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) Um ponto de distribuição foi alterado neste site, adicionando o site PS1 à lista de sites aos quais estamos enviando pacote <PackageID>.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) Site pai do PS1 é CS1

  4. O thread de processamento de pacote sai após o processamento do pacote:

    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~StoredPkgVersion (1) do pacote <PackageID>. StoredPkgVersion no banco de dados é 1.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~SourceVersion (1) do packageID<>. SourceVersion no banco de dados é 1.
    SMS_DISTRIBUTION_MANAGER 4452 (0x1164) ~Sair do thread de processamento de pacotes para packageID<>.

Etapa 4: o componente do agendador processa o mini-trabalho criado pelo thread de processamento de pacotes e cria uma solicitação de envio

O componente do agendador acorda após receber um trabalho para transferir a cópia compactada do pacote e cria uma solicitação de envio para o Remetente para que o Remetente possa enviar a cópia compactada para o site de destino.

SMS_SCHEDULER 5492 (0x1574) ======== de trabalhos de processamento de ========
SMS_SCHEDULER 5492 (0x1574) <Ativando JOBID>[Distribuição de Software para Dummy1, ID do Pacote = <PackageID>]~
SMS_SCHEDULER site de destino 5492 (0x1574): PS1, Endereço Preferencial: *, Prioridade: 2
SMS_SCHEDULER 5492 (0x1574) Tipo de instrução: MICROSOFT|SMS|MINIJOBINSTRUCTION|PACOTE~
SMS_SCHEDULER 5492 (0x1574) Criando arquivo de instrução: \\CS1SITE.CONTOSO.COM\SMS_CS1\inboxes\schedule.box\tosend\JOBID. Icl~
SMS_SCHEDULER 5492 (0x1574) Raiz de transferência: E:\SMSPKG\<PackageID>. PCK.1~
SMS_SCHEDULER 5492 (0x1574) <Atualização de JOBID>[Distribuição de Software para Dummy1, ID do Pacote = <PackageID>]~
SMS_SCHEDULER 5492 (0x1574) Criou nova ID de solicitação de envio: 202SQCS1~

O agendador atualizará periodicamente as solicitações de envio e registrará informações úteis sobre as solicitações de envio que incluem o tamanho total e o tamanho restante:

SMS_SCHEDULER 5492 (0x1574) ====== atualização da lista de solicitações de envio =======
SMS_SCHEDULER 5492 (0x1574) Enviar Solicitação 202SQCS1 JobID: JOBID DestSite: PS1 FinalSite: Estado: Status pendente: ação: nenhum tamanho total: 204864 Restante dok: 204864k Pulsação: 12:23 Início: 12:00 Término: 12:00 Repetição: SWD PkgID: <PackageID> SWD Pkg Versão: 1

Etapa 5: o componente remetente começa a trabalhar na solicitação de envio

O componente remetente processa a solicitação de envio e envia a cópia compactada do pacote para o site de destino.

  1. O thread do remetente main inicia um thread de envio que é o thread que executará todo o trabalho para essa solicitação de envio.

    SMS_LAN_SENDER 6700 (0x1a2c) Solicitação de envio encontrada. ID: 202SQCS1, Dest Site: PS1~
    SMS_LAN_SENDER 6700 (0x1a2c) Verificando a capacidade de envio específica do site. Usado 0 de 3.~
    SMS_LAN_SENDER 6700 (0x1a2c) ~Criar thread de envio (ID do thread = 1150)

  2. O thread de envio processa a solicitação de envio e copia o arquivo de pacote compactado (arquivo PCK ) para o site de destino junto com o arquivo de instrução de pacote (arquivo SNI ).

    SMS_LAN_SENDER 4432 (0x1150) ~Tentando o endereço nº 1 (de 1)
    SMS_LAN_SENDER 4432 (0x1150) ~Passou no teste de arquivo xmit, use a conexão existente
    SMS_LAN_SENDER 4432 (0x1150) ~Arquivo de pacote = E:\SMSPKG\<PackageID>. PCK.1
    SMS_LAN_SENDER 4432 (0x1150) ~Arquivo de instrução = E:\ConfigMgr\inboxes\schedule.box\tosend\00000E2A. Icl
    SMS_LAN_SENDER 4432 (0x1150) ~Verificação de arquivo remoto \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. PCK
    SMS_LAN_SENDER 4432 (0x1150) ~Verificação de arquivo remoto \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. SNI
    SMS_LAN_SENDER 4432 (0x1150) ~Verificação de arquivo remoto \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. TMP...
    SMS_LAN_SENDER 4432 (0x1150) ~Tentar criar/abrir o arquivo remoto \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. PCK
    SMS_LAN_SENDER 4432 (0x1150) ~Created/opened the remote file \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. PCK
    SMS_LAN_SENDER 4432 (0x1150) ~Envio iniciado [E:\SMSPKG\<PackageID>. PCK.1]
    SMS_LAN_SENDER 4432 (0x1150) ~Tente gravar 1024 bytes para \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. PCK na posição 0
    SMS_LAN_SENDER 4432 (0x1150) ~Escreveu 1024 bytes para \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. PCK na posição 0 ...
    SMS_LAN_SENDER 4432 (0x1150) ~Tente gravar bytes de 380731 em \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. PCK na posição 209398784
    SMS_LAN_SENDER 4432 (0x1150) ~Escreveu 380731 bytes para \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. PCK na posição 209398784
    SMS_LAN_SENDER 4432 (0x1150) ~Envio concluído [E:\SMSPKG\<PackageID>. PCK.1]
    SMS_LAN_SENDER 4432 (0x1150) ~Terminei de enviar o pacote <SWD PackageID> versão 1 para o site PS1 ...
    SMS_LAN_SENDER 4432 (0x1150) ~Envio iniciado [E:\ConfigMgr\inboxes\schedule.box\tosend\00000E2A. Icl]
    SMS_LAN_SENDER 4432 (0x1150) ~Envio concluído [E:\ConfigMgr\inboxes\schedule.box\tosend\00000E2A. Icl]
    SMS_LAN_SENDER 4432 (0x1150) ~Terminei de enviar o pacote <SWD PackageID> versão 1 para o site PS1 ...
    SMS_LAN_SENDER 4432 (0x1150) ~Renomeando o arquivo remoto \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. TMP para \\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. SNI
    MS_LAN_SENDER 4432 (0x1150) ~Renomear concluído [\\PS1SITE.CONTOSO.COM\SMS_SITE\202SQCS1. TMP]
    SMS_LAN_SENDER 4432 (0x1150) ~Envio concluído com êxito

    O thread de envio copia esses arquivos para o SMS_SITE compartilhamento no site de recebimento.

    Dica

    O arquivo sender.log registra continuamente a posição em que está gravando. Por exemplo, a posição é 209398784 no log acima. Essa posição é o deslocamento de bytes em que está escrevendo e você pode encontrar a quantidade de dados copiada convertendo esse valor. Por exemplo, 209398784 bytes = 199,69 MB.

Etapa 6: o componente do agendador marca o trabalho como concluído e exclui a solicitação de envio

O componente agendador monitora as solicitações de envio e, depois que o Remetente terminar de processar a solicitação de envio, o Agendador marca o trabalho como concluído e exclui a solicitação de envio:

SMS_SCHEDULER 5492 (0x1574) ====== Verificação do status de todas as solicitações de envio ======
SMS_SCHEDULER 5492 (0x1574) ~==== Verificação de solicitações de envio para outbox \\CS1SITE.CONTOSO.COM\SMS_CS1\inboxes\schedule.box\outboxes\LAN.~~
SMS_SCHEDULER 5492 (0x1574) Verificando a solicitação de envio 202SQCS1~
SMS_SCHEDULER 5492 (0x1574) Envio concluído (13985442 bytes/s).~
SMS_SCHEDULER 5492 (0x1574) <Atualização do JOBID>[Distribuição de Software para Dummy1, ID do Pacote = <PackageID>]~
SMS_SCHEDULER 5492 (0x1574) A solicitação de envio foi concluída com êxito.~
SMS_SCHEDULER 5492 (0x1574) <STATUS DO TRABALHO – COMPLETO>~
SMS_SCHEDULER 5492 (0x1574) Excluindo o arquivo de instruções \\CS1SITE.CONTOSO.COM\SMS_CS1\inboxes\schedule.box\tosend\00000E2A. Icl.~
SMS_SCHEDULER 5492 (0x1574) Exclusão da fonte do pacote de trabalho [E:\SMSPKG\<PackageID>. PCK.1].~
SMS_SCHEDULER 5492 (0x1574) Arquivo contado de referência excluído E:\SMSPKG\<PackageID>. PCK.1
SMS_SCHEDULER contagem de ref decrementesd 5492 (0x1574) no arquivo E:\SMSPKG\<PackageID>. PCK.1, contagem = 0
SMS_SCHEDULER 5492 (0x1574) Excluindo a solicitação de envio com ID: 202SQCS1.~
SMS_SCHEDULER 5492 (0x1574) Trabalho excluído JOBID.~

Após essa etapa, o site de envio não tem mais trabalho a ser feito e o site de recebimento inicia o processamento do pacote.

No site de destino

Etapa 7: o Despooler processa os arquivos PCK e SNI

Durante a Etapa 5, arquivos PCK e SNI foram copiados para o SMS_SITE compartilhamento no site de recebimento. Em cada site Configuration Manager, a pasta \inboxes\despoolr.box\receive é compartilhada como SMS_SITE. Quando esses arquivos chegam na pasta despoolr.box\receive , o despooler componente acorda para processar o arquivo SNI que é um arquivo de instrução.

  1. O thread de despooler main cria um thread de despooling.

    O Despooler Principal localiza o arquivo de instrução e cria um thread de despooling para processar o arquivo de instrução:

    SMS_DESPOOLER 6128 (0x17f0) ~Instrução pronta encontrada 202sqcs1.sni
    SMS_DESPOOLER 6128 (0x17f0) ~Usado 0 de 3 threads de despooling
    SMS_DESPOOLER 6128 (0x17f0) ~Criou um novo thread de despooling EE8

  2. (Esporadicamente) Às vezes, o thread de desativação não processa instruções na primeira tentativa e tenta novamente após 5 minutos.

    O thread de despool processa o arquivo de instrução, no entanto, em muitos casos, o despooler pela primeira vez tenta processar um arquivo de instrução para um pacote que falhará com uma mensagem "informações de pacote ainda não chegaram para esta versão" porque as informações de metadados do pacote ainda não foram replicadas para o site de recebimento. Quando isso acontece, despooler.log mostra "código de erro = 12", mas tenta novamente essa instrução após cinco minutos, o que é bem-sucedido à medida que as informações do pacote são replicadas durante esse tempo. A etapa 7-3 mostra o processamento bem-sucedido da instrução sobre repetição.

    SMS_DESPOOLER 3816 (0xee8) ~Verificando a assinatura da instrução E:\ConfigMgr\inboxes\despoolr.box\receive\ds_s76nc.ist do tipo MICROSOFT|SMS|MINIJOBINSTRUCTION|PACOTE
    SMS_DESPOOLER 3816 (0xee8) ~Assinatura marcada OK para obter instruções provenientes do site CS1, prossiga com a execução da instrução.
    SMS_DESPOOLER 3816 (0xee8) ~Instruções de execução do tipo MICROSOFT|SMS|MINIJOBINSTRUCTION|PACOTE
    SMS_DESPOOLER 3816 (0xee8) ~Pacote recebido PackageID versão 1. Arquivo compactado – E:\SMSPKG\<PackageID>. PCK.1 como E:\ConfigMgr\inboxes\despoolr.box\receive\ds_s76nc.pkg
    SMS_DESPOOLER caminho 3816 (0xee8) ~Pacote antigo armazenadoUNC é .
    SMS_DESPOOLER 3816 (0xee8) ~As informações desse pacote[<PackageID>] ainda não chegaram para esta versão [1]. Repetindo mais tarde ...
    SMS_DESPOOLER 3816 (0xee8) ~Instrução de repetição criada para job JOBID
    SMS_DESPOOLER 3816 (0xee8) ~Despooler não executou a instrução, o código de erro = 12 ...
    SMS_DESPOOLER 6128 (0x17f0) ~Instrução E:\ConfigMgr\inboxes\despoolr.box\receive\ds_3kyyh.sni não será processada até 16/05/2016 12:29:11 Hora do dia leste

    Se isso acontecer, o DistMgr tentará processar o pacote, no entanto, como a cópia compactada do pacote não foi processada e extraída na biblioteca de conteúdo, o thread de processamento de pacotes registrará o seguinte e sairá:

    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) ~Iniciado o thread de processamento de pacotes para pacote '<PackageID>', ID do thread = 0xAAC (2732)
    SMS_DISTRIBUTION_MANAGER 2732 (0xaac) ~Processing packageID <> (SourceVersion:1; StoredVersion:0)
    SMS_DISTRIBUTION_MANAGER 2732 (0xaac) ~O conteúdo do pacote <PackageID> ainda não chegou do site CS1, tentará novamente mais tarde.
    SMS_DISTRIBUTION_MANAGER 2732 (0xaac) ~Todos os threads DP foram concluídos para o thread de processamento PackageID> do pacote<.
    SMS_DISTRIBUTION_MANAGER 2732 (0xaac) ~Sair do thread de processamento de pacotes para packageID<>.

  3. O thread de despool processa a instrução e grava conteúdo na biblioteca de conteúdo.

    O thread de despool processa a instrução, descompacta o arquivo PCK em um local temporário e grava o conteúdo na biblioteca de conteúdo.

    SMS_DESPOOLER 4072 (0xfe8) ~Pacote recebido <PackageID> versão 1. Arquivo compactado – E:\SMSPKG\<PackageID>. PCK.1 como E:\ConfigMgr\inboxes\despoolr.box\receive\PKGj3uib.TRY
    SMS_DESPOOLER caminho 4072 (0xfe8) ~Pacote antigo armazenadoUNC é .
    SMS_DESPOOLER 4072 (0xfe8) ~Use a unidade E para armazenar o pacote compactado.
    SMS_DESPOOLER 4072 (0xfe8) Nenhuma entrada de registro de cache de branch encontrada.
    SMS_DESPOOLER 4072 (0xfe8) Descompactando e:\SMSPKG\<PackageID>. PCK para E:\SMSPKG\<PackageID>. PCK.temp
    biblioteca de conteúdo SMS_DESPOOLER 4072 (0xfe8): E:\SCCMContentLib
    SMS_DESPOOLER 4072 (0xfe8) Extração de E:\SMSPKG\<PackageID>. PCK.temp
    SMS_DESPOOLER 4072 (0xfe8) Pacote de extração <packageID>
    SMS_DESPOOLER 4072 (0xfe8) Extração de conteúdo <PackageID.1>
    SMS_DESPOOLER 4072 (0xfe8) Definição de pacote de gravação para <PackageID>
    SMS_DESPOOLER 4072 (0xfe8) ~PackageID <> (versão 0) existe na fonte de distribuição, salve a versão mais recente (versão 1).
    SMS_DESPOOLER 4072 (0xfe8) ~PackageID <>armazenado. Versão do pacote armazenado = 1

    Depois de extrair com êxito o conteúdo para a biblioteca de conteúdo, o despooler atualiza StoredPkgVersion na SMSPackages_L tabela e insere uma linha na tabela para que o PkgNotification DistMgr possa ser notificado para processar o pacote.

    update SMSPackages_L set StoredPkgPath = N'\\PS1SITE.CONTOSO.COM\E$\SMSPKG\<PackageID>.PCK', StoredPkgVersion = 1, UpdateMask = 160, UpdateMaskEx = 0, Action = 1 where PkgID = N'<PackageID>'
    insert PkgNotification (PkgID, Priority, Type, TimeKey) values (N'<PackageID>', 2, 1, GetDate())
    
  4. O thread de despooling atualiza a linha Tipo 1 para o site de recebimento no , gera uma mensagem status com a ID 4400 e, em PkgStatusseguida, sai.

    update PkgStatus set Status = 2, UpdateTime = N'Date Time', Location = N'\\PS1SITE.CONTOSO.COM\E$\SMSPKG\PackageID.PCK', ShareName = N'', HTTPUrl = N'', SourceVersion = 1, Personality = 0, State = 0, SigURL = N'', SigLocation = N'' where ID = N'PackageID' and Type = 1 and SiteCode = N'PS1' and PkgServer = N'PS1SITE.CONTOSO.COM'
    

    SMS_DESPOOLER 4072 (0xfe8) STATMSG: ID=4400 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DESPOOLER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=4072 GMTDATE=Mon 16 de maio 16:31:21.400 2016 ISTR0="<PackageID>" ISTR1="\PS1SITE.CONTOSO.COM\E$\SMSPKG\<PackageID>. PCK" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="<PackageID>"
    SMS_DESPOOLER 4072 (0xfe8) ~Despooler executou com êxito uma instrução.

Etapa 8: SMSDBMON notifica distMgr para processar o pacote

O SMSDBMON detecta uma alteração na PkgNotification tabela e descarta um arquivo DistMgr.box PKN para instruir o DistMgr a processar o pacote.

SMS_DATABASE_NOTIFICATION_MONITOR RCV 1792 (0x700): INSERT on PkgNotification for PkgNotify_Add [<PackageID> ][1035289]
SMS_DATABASE_NOTIFICATION_MONITOR 1792 (0x700) SND: E:\ConfigMgr\inboxes\distmgr.box\<PackageID>. PKN [1035289]

Etapa 9: DistMgr acorda para processar o pacote

O DistMgr acorda depois de detectar o arquivo PKN e processa o pacote.

  1. O thread DistMgr main cria um thread de processamento de pacote.

    O thread DistMgr main adiciona o pacote à fila de processamento de pacotes e cria um thread de processamento de pacotes.

    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) Propriedades de pacote encontradas atualizadas notificação para o pacote '<PackageID>'
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) Adicionando o pacote '<PackageID>' à fila de processamento de pacotes.
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) ~Atualmente usando 0 em cada 3 threads de processamento de pacote permitidos.
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) ~Iniciado o thread de processamento de pacotes para o pacote '<PackageID>', iD do thread = 0x93C (2364)

  2. O thread de processamento de pacote cria threads DP para processar ações de pacote e aguarda a saída delas.

    O thread de processamento de pacote (TID 2364) processa as ações de pacote (adicionar/atualizar/remover) para os DPs. Nesse caso, o pacote foi distribuído a um DP e o thread de processamento de pacote cria um thread DP para adicionar o pacote ao DP. Depois de criar o thread DP, o thread de processamento de pacote aguarda que todos os threads DP saiam antes de avançar.

    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~Processing packageID <> (SourceVersion:1; StoredVersion:1)
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) Comece a atualizar o pacote <PackageID>...
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~A ação do pacote é 1, a Máscara de Atualização é 160 e UpdateMaskEx é 0.
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~Use a unidade E para armazenar o pacote compactado.
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~Criado/atualizado com êxito o pacote <PackageID> ...
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) Comece a adicionar <pacote PackageID> ao servidor ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\...
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~Criou o thread de processamento DP 5204 para adição ou atualização do pacote <PackageID> no servidor ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\ ...
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~Aguardando a conclusão de todos os threads DP para o thread de processamento PackageID> do pacote<.

  3. Os threads DP criam um trabalho PkgXferMgr para transferir conteúdo para os DPs e, em seguida, sai.

    O thread DP (TID 5204) começa a trabalhar na adição do pacote ao DP. Os threads DP não copiam o conteúdo do pacote diretamente para o DP, mas criam um trabalho para o Gerenciador de Transferência de Pacote (PkgXferMgr) instruindo-o a copiar o conteúdo do pacote para o DP. As entradas de log a seguir mostram o thread DP criando um trabalho PkgXferMgr. Depois que o trabalho é criado, o trabalho do thread DP é feito e o thread DP sai.

    SMS_DISTRIBUTION_MANAGER 5204 (0x1454) Thread DP: Tentando adicionar ou atualizar o pacote <PackageID> no DP ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 5204 (0x1454) STATMSG: ID=2342 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=5204 GMTDATE=Mon 16 de maio 16:31:37.364 2016 ISTR0="Dummy1" ISTR1="["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=404 AVAL1="["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\"
    SMS_DISTRIBUTION_MANAGER 5204 (0x1454) O contexto atual do usuário será usado para se conectar a ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\.~
    SMS_DISTRIBUTION_MANAGER 5204 (0x1454) ~Trabalho de transferência de pacote criado para enviar<package PACKAGEID> para o ponto de distribuição ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\.
    SMS_DISTRIBUTION_MANAGER 5204 (0x1454) STATMSG: ID=2357 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=5204 GMTDATE=Mon 16 de maio 16:31:46.670 2016 ISTR0="PackageID" ISTR1="["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=404 AVAL1="["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\"
    SMS_DISTRIBUTION_MANAGER 5204 (0x1454) executando a limpeza antes de retornar.
    SMS_DISTRIBUTION_MANAGER 5204 (0x1454) Cancelando a conexão de rede para \\PS1DP1.CONTOSO.COM\ADMIN$.

    Quando o thread DP cria um trabalho PkgXferMgr, ele o faz inserindo uma linha na DistributionJobs tabela.

    insert into DistributionJobs (DPID,PkgID,PackageVersion,State,CreationTime,Action) values(32,N'PackageID',1,0,N'Date Time',1)
    

    Depois de criar o trabalho, o thread DP também redefine a Ação para o DP na PkgServers_L tabela.

    update PkgServers_L set UpdateMask = 0, Action = 0, RefreshTrigger = 0, LastRefresh = N'Date Time' where PkgID = N'PackageID' and NALPath = N'["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\' and SiteCode = N'PS1' and Action <> 3
    
  4. O thread do processo de pacote sai após a saída de todos os threads DP.

    Depois que todos os threads DP saem, o thread de processamento de pacotes também sai:

    SMS_DISTRIBUTION_MANAGER thread 2364 (0x93c) ~DP para pacote <PackageID> com a alça de thread 00000000000218C e a ID do thread 5204 terminou.
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~Todos os threads DP foram concluídos para o thread de processamento PackageID> do pacote<.
    SMS_DISTRIBUTION_MANAGER 2364 (0x93c) ~ Sair do thread de processamento de pacotes para packageID<>.

Etapa 10: SMSDBMON notifica PkgXferMgr para processar o trabalho criado na etapa 9-3

Depois que o trabalho PkgxferMgr é criado na etapa 9-3, o DistributionJobs SMSDBMON detecta uma alteração na tabela e descarta um arquivo PkgTransferMgr.box PKN para instruir PkgXferMgr a processar o trabalho:

SMS_DATABASE_NOTIFICATION_MONITOR RCV 1792 (0x700): UPDATE on DistributionJobs for DistributionJob_Creation [<PackageID>][1035292]
SMS_DATABASE_NOTIFICATION_MONITOR 1792 (0x700) SND: E:\ConfigMgr\inboxes\PkgTransferMgr.box\<PackageID>. PKN [1035292]

Etapa 11: PkgXferMgr acorda para processar o trabalho

  1. O thread PkgXferMgr main cria um thread de envio para o DP especificado:

    SMS_PACKAGE_TRANSFER_MANAGER 5392 (0x1510) Solicitação de envio encontrada com ID: 577, Pacote: <PackageID>, Versão:1, Prioridade: 2, Destino: PS1DP1.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 5392 (0x1510) ~Criar thread de envio (ID do thread = 0x12EC)

  2. O thread de envio copia o conteúdo para o DP.

    O thread de envio começa a copiar o conteúdo do pacote para o DP. Esse processo envolve copiar todos os arquivos no pacote para o DP no SMS_DP$ diretório. Como o pacote não foi redistribuído para o DP, a ação Redistribuir será definida como 0, o que significa que, se um arquivo já existir na biblioteca de conteúdo no DP, ele não será recopiado.

    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Envio de thread começando para Trabalho: 577, pacote: <PackageID>, Versão: 1, Prioridade: 2, servidor: PS1DP1.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Enviado status ao gerenciador de distribuição para pkg <PackageID>, versão 1, status 0 e ponto de distribuição ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\~
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Envio de conteúdo <herdado PackageID.1> para packageID <>
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Redistribuir=0, Related=
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Enviar arquivo '\\PS1DP1.CONTOSO.COM\SMS_DP$\73E055438D4731F41DB6C3BCB90919F6000026B330C330C73942454A174D7E26533-PackageID.1.temp'
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Adicionando Dummy1.txt arquivo no <PackageID.1>.
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Pós-ações concluídas para PS1DP1.CONTOSO.COM de DP remoto
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) ~Envio concluído com êxito
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) o aplicativo de execução (NT AUTHORITY\SYSTEM) do computador (SMS_PACKAGE_TRANSFER_MANAGER PS1SITE.CONTOSO.COM) está enviando alterações do SDK do site(PS1)
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) ~Terminei de enviar o pacote <SWD PackageID> versão 1 para o ponto de distribuição PS1DP1.CONTOSO.COM
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) STATMSG: ID=8200 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_PACKAGE_TRANSFER_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=4844 GMTDATE=Mon 16 de maio 16:34:27.614 2016 ISTR0="<PackageID>" ISTR1="1" ISTR2="PS1DP1.CONTOSO.COM" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=410 AVAL1="1"

  3. O thread de envio envia uma mensagem status ao DistMgr.

    Depois que o thread de envio terminar de enviar o conteúdo (êxito/falha), ele envia o status ao DistMgr para que o DistMgr possa processar e atualizar o status no banco de dados. Essa status é enviada ao DistMgr, soltando um arquivo STA que contém o pacote status no DistMgr.box\incoming diretório.

    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Enviado status para o gerenciador de distribuição para pkg <PackageID>, versão 1, status 3 e ponto de distribuição ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\~
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) STATMSG: ID=8210 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_PACKAGE_TRANSFER_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=4844 GMTDATE=Mon 16 16:34:27.614 2016 ISTR0="<PackageID>" ISTR1="1" ISTR2="PS1DP1.CONTOSO.COM" ISTR3="" ISTR4="" ISTR5="" ISTR6=""STR7="" ISTR8="" ISTR9="" NUMATTRS=3 AID0=400 AVAL0="<PackageID>" AID1=410 AVAL1="1" AID2=404 AVAL2="["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\"
    SMS_PACKAGE_TRANSFER_MANAGER 4844 (0x12ec) Enviar thread completo~

Etapa 12: Provedor de DP de SMS adiciona o conteúdo copiado na etapa 11-2 à biblioteca de conteúdo

Durante a etapa 11-2, depois de copiar cada arquivo, PkgXferMgr instrui o DP a adicionar o arquivo à biblioteca de conteúdo executando métodos na SMS_DistributionPoint classe WMI no namespace provedor de SMS DP (root\SCCMDP). Quando o conteúdo é adicionado com êxito à biblioteca de conteúdo, SMSDPProv.log mostra o seguinte:

2996 (0xbb4) O conteúdo '<PackageID.1>' do pacote '<PackageID>' foi adicionado à biblioteca de conteúdo com êxito

Etapa 13: DistMgr processa a mensagem status enviada na etapa 11-3

Para processar o arquivo STA de entrada (enviado na etapa 11-3), o DistMgr usa o thread de processamento de replicação. Esse thread acorda para processar o arquivo STA, atualiza a linha Tipo 2 nas PkgStatustabelas do banco de dados e gera uma mensagem status com a ID 2330, o que significa "O Gerenciador de Distribuição distribuiu com êxito o pacote para o ponto de distribuição".

SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Processamento do arquivo de entrada E:\ConfigMgr\inboxes\distmgr.box\INCOMING\1R7IEEHU.STA.
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Processamento de STA para DP regular ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Processamento status atualização para package <PACKAGEID>
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Atualizou com êxito o servidor de pacotes status para ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\ para package <PACKAGEID>, Status 3
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) STATMSG: ID=2330 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=6116 GMTDATE=Mon 16 de maio 16:34:31.679 2016 ISTR0="<PackageID>" ISTR1="["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=404 AVAL1="["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\"
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Excluir com êxito o pacote status arquivo E:\ConfigMgr\inboxes\distmgr.box\INCOMING\1R7IEEHU. STA

Esse thread executa a consulta a seguir para atualizar o status no banco de dados.

update PkgStatus set Status = 3, UpdateTime = N'Date Time', Location = N'MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\SMSPKGC$\PackageID\', ShareName = N'', HTTPUrl = N'http://PS1DP1.CONTOSO.COM/SMS_DP_SMSPKG$/\PackageID', SourceVersion = 1, Personality = 0, State = 0, SigURL = N'http://PS1DP1.CONTOSO.COM/SMS_DP_SMSSIG$/\PackageID', SigLocation = N'MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\SMSSIG$\\PackageID.1.tar'  where ID = N'\PackageID' and Type = 2 and SiteCode = N'PS1' and PkgServer = N'["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\'

Etapa 14: as alterações de status de pacote são replicadas para outros sites por meio da replicação de banco de dados

Depois que o pacote status for atualizado no banco de dados, ele será replicado para outros sites por meio da replicação de banco de dados.

Distribuir um pacote para o DP padrão

As etapas a seguir descrevem o fluxo de eventos quando um pacote é distribuído a um DP no site primário e este servidor de site primário em questão já tem uma cópia do pacote na biblioteca de conteúdo:

Etapa 1: o administrador distribui o pacote para o DP. O administrador pode fazer isso no console de administração conectado diretamente ao site primário em questão ou ao site de administração central ou a um site primário diferente

Depois que o administrador distribui o pacote para um DP do console, o console de administração chama o AddDistributionPoints método da SMS_Package classe para adicionar o DP especificado ao pacote. SMSProv.log mostra o seguinte:

Contexto do Provedor de SMS 4416 (0x1140): SMSAppName=Configuration Manager Console do Administrador~
Provedor de SMS 4416 (0x1140) ExecMethodAsync : SMS_Package.PackageID="<PackageID>"::AddDistributionPoints~
Provedor de SMS 4416 (0x1140) CExtProviderClassObject::D oExecuteMethod AddDistributionPoints~
Auditoria do Provedor de SMS 4416 (0x1140): CONTOSO\Administração de usuário chamado de método auditado de uma instância da classe SMS_Package.~

Quando esse método é chamado, o Provedor de SMS insere uma linha PkgServers com Action definido como 2 (ADD):

insert PkgServers (PkgID, NALPath, SiteCode, SiteName, SourceSite, LastRefresh, RefreshTrigger, UpdateMask, Action) select N'<PackageID>', N'["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\', N'PS1', Sites.SiteName, N'PS1', N'04/10/1970 06:35:00', 0, 0, 2  from Sites where SiteCode = N'PS1'
insert PkgNotification (PkgID, Priority, Type, TimeKey) values (N'<PackageID>', 2, 4, GetDate())

Etapa 2: se o administrador distribuir o pacote de um site primário diferente ou do site de administração central, o DRS (Serviço de Replicação de Banco de Dados) replicará as alterações no site em questão

Se o administrador distribuir esse pacote com o console conectado ao site de administração central ou a um site primário diferente, o DRS replicará as alterações em PkgServers outros sites.

Etapa 3: SMSDBMON notifica distMgr para processar o pacote

Depois que a alteração é replicada no site em que o DP reside, o SMSDBMON detecta uma alteração na PkgNotification tabela e descarta um arquivo DistMgr.box PKN para instruir o DistMgr a processar o pacote:

SMS_DATABASE_NOTIFICATION_MONITOR RCV 1792 (0x700): INSERT on PkgNotification for PkgNotify_Add [<PackageID>][1035417]
SMS_DATABASE_NOTIFICATION_MONITOR 1792 (0x700) SND: E:\ConfigMgr\inboxes\distmgr.box\<PackageID>. PKN [1035417]

Etapa 4: DistMgr acorda para processar o pacote

O DistMgr acorda depois de detectar o arquivo PKN e processa o pacote.

  1. O thread DistMgr main inicia um thread de processamento de pacote.

    O thread DistMgr main adiciona o pacote à fila de processamento de pacotes e cria um thread de processamento de pacotes.

    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) Adicionando o pacote '<PackageID>' à fila de processamento de pacotes.
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) ~Atualmente usando 0 em cada 3 threads de processamento de pacote permitidos.
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) ~Início do thread de processamento de pacotes para pacote '<PackageID>', ID do thread = 0xB58 (2904)

  2. O thread de processamento de pacote cria threads DP para processar ações de pacote e aguarda a saída deles.

    O thread de processamento de pacote (TID 2904) processa as ações de pacote (adicionar/atualizar/remover) para o DP. Nesse caso, o pacote foi adicionado a um DP e o thread de processamento de pacote cria um thread DP para adicionar o pacote ao DP. Depois de criar o thread DP, o thread de processamento de pacote aguarda que todos os threads DP saiam antes de avançar:

    SMS_DISTRIBUTION_MANAGER 2904 (0xb58) ~Processing packageID <> (SourceVersion:1; StoredVersion:1)
    SMS_DISTRIBUTION_MANAGER 2904 (0xb58) Nenhuma ação especificada para o pacote <PackageID>, no entanto, pode haver alterações de servidor de pacote para este pacote.
    SMS_DISTRIBUTION_MANAGER 2904 (0xb58) Comece a adicionar packageID <> ao servidor ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\...
    SMS_DISTRIBUTION_MANAGER 2904 (0xb58) ~Created DP processing thread 3792 for addition or update of packageID <> on server ["Display=\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\PS1DP2.CONTOSO.COM\ SMS_DISTRIBUTION_MANAGER 2904 (0xb58) ~Esperando que todos os threads DP sejam concluídos para o thread de processamento PackageID> do pacote<.

  3. Os threads DP criam um trabalho do PkgXferMgr (Gerenciador de Transferência de Pacote) para transferir conteúdo para os DPs e, em seguida, sai.

    O thread DP (TID 3792) inicia o trabalho de adicionar o pacote ao DP. Os threads DP não copiam o conteúdo do pacote diretamente para o DP, mas criam um trabalho para PkgXferMgr instruindo-o a copiar o conteúdo do pacote para o DP. As entradas de log a seguir mostram o thread DP criando um trabalho PkgXferMgr. Depois que o trabalho é criado, o trabalho do thread DP é feito e o thread DP sai.

    SMS_DISTRIBUTION_MANAGER 3792 (0xed0) Thread DP: tentando adicionar ou atualizar o pacote <PackageID> no DP ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 3792 (0xed0) ~Trabalho de transferência de pacote criado para enviar<package PackageID> para o ponto de distribuição ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\.
    SMS_DISTRIBUTION_MANAGER 3792 (0xed0) STATMSG: ID=2357 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=3792 GMTDATE=Mon 16 de maio 19:26:58.642 2016 ISTR0="<PackageID>" ISTR1="["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=404 AVAL1="["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\"

    Quando o thread DP cria um trabalho PkgXferMgr, ele o faz inserindo uma linha na DistributionJobs tabela.

    insert into DistributionJobs (DPID,PkgID,PackageVersion,State,CreationTime,Action) values(35,N'PackageID',1,0,N'2016/05/16 15:26:58',1)
    

    Depois de criar o trabalho, o thread DP também redefine a Ação para o DP na PkgServers_L tabela:

    update PkgServers_L set UpdateMask = 0, Action = 0, RefreshTrigger = 0, LastRefresh = N'05/16/2016 19:26:58' where PkgID = N'PackageID' and NALPath = N'["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\' and SiteCode = N'PS1' and Action <> 3
    
  4. O thread de processamento de pacote sai após a saída de todos os threads DP.

    Depois que todos os threads DP saem, o thread de processamento de pacotes também sai.

    SMS_DISTRIBUTION_MANAGER thread 2904 (0xb58) ~DP para pacote <PackageID> com o identificador de thread 0000000000002524 e a ID do thread 3792 terminou.
    SMS_DISTRIBUTION_MANAGER 2904 (0xb58) ~Todos os threads DP foram concluídos para o thread de processamento PackageID> do pacote<.
    SMS_DISTRIBUTION_MANAGER 2904 (0xb58) ~Sair do thread de processamento de pacotes para package <PACKAGEID>.

Etapa 5: SMSDBMON notifica PkgXferMgr para processar o trabalho

Depois que o trabalho PkgxferMgr é criado, o SMSDBMON desta vez detecta uma alteração na DistributionJobs tabela e solta um arquivo PkgTransferMgr.box PKN para instruir PkgXferMgr a processar o trabalho:

SMS_DATABASE_NOTIFICATION_MONITOR RCV 1792 (0x700): UPDATE on DistributionJobs for DistributionJob_Creation [<PackageID>][1035419]
SMS_DATABASE_NOTIFICATION_MONITOR 1792 (0x700) SND: E:\ConfigMgr\inboxes\PkgTransferMgr.box\<PackageID>. PKN [1035419]

Etapa 6: PkgXferMgr acorda para processar o trabalho

  1. O thread PkgXferMgr main cria um thread de envio.

    O thread PkgXferMgr main cria um thread de envio para enviar o pacote para o DP especificado.

    SMS_PACKAGE_TRANSFER_MANAGER 5392 (0x1510) Solicitação de envio encontrada com ID: 582, Pacote: <PackageID>, Versão:1, Prioridade: 2, Destino: PS1DP2.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 5392 (0x1510) ~Criar thread de envio (ID do thread = 0xBCC)

  2. O thread de envio copia conteúdo para o DP.

    O thread de envio (TID 3020) começa a copiar o conteúdo do pacote para o DP. Esse processo envolve copiar todos os arquivos no pacote para o DP no SMS_DP$ diretório. Como o pacote não foi redistribuído para o DP, a ação de redistribuição é definida como 0, o que significa que, se um arquivo já existir na biblioteca de conteúdo no DP, ele não será copiado novamente.

    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Envio de thread começando para Trabalho: 582, pacote: <PackageID>, Versão: 1, Prioridade: 2, servidor: PS1DP2.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Enviado status para o gerenciador de distribuição para pkg <PackageID>, versão 1, status 0 e ponto de distribuição ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\~
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Envio de conteúdo <herdado PackageID.1> para packageID <>
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Redistribuir=0, Related= SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Envio de arquivo '\\PS1DP2.CONTOSO.COM\SMS_DP$\73E055438D4731F41DB6C3BCB90919F60000226B330C73942454A174D7E26533-PackageID.1.temp'
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Adicionando Dummy1.txt arquivo no <PackageID.1>
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Pós-ações concluídas para PS1DP2.CONTOSO.COM de DP remoto
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) ~Envio concluído com êxito
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) ~Terminei de enviar o pacote <SWD PackageID> versão 1 para o ponto de distribuição PS1DP2.CONTOSO.COM
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) STATMSG: ID=8200 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_PACKAGE_TRANSFER_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=3020 GMTDATE=Mon 16 de maio 19:28:12.991 2016 ISTR0="<PackageID>" ISTR1="1" ISTR2="PS1DP2.CONTOSO.COM" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=410 AVAL1="1"

  3. O thread de envio envia uma mensagem status ao DistMgr.

    Depois que o thread de envio terminar de enviar o conteúdo (êxito/falha), ele envia o status ao DistMgr para que o DistMgr possa processar e atualizar o status no banco de dados. Essa status é enviada ao DistMgr soltando um arquivo STA que contém o pacote status no DistMgr.box\incoming diretório:

    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Enviado status para o gerenciador de distribuição para pkg PackageID, versão 1, status 3 e ponto de distribuição ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\~
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) STATMSG: ID=8210 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_PACKAGE_TRANSFER_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=3020 GMTDATE=Mon 16 de maio 19:28:13.003 2016 ISTR0="<PackageID>" ISTR1="1" ISTR2="PS1DP2.CONTOSO.COM" ISTR3="" ISTR4="" ISTR5="" ISTR6=". ISTR7="" ISTR8="" ISTR9="" NUMATTRS=3 AID0=400 AVAL0="<PackageID>" AID1=410 AVAL1="1" AID2=404 AVAL2="["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\"
    SMS_PACKAGE_TRANSFER_MANAGER 3020 (0xbcc) Enviar thread completo~

Etapa 7: Provedor de DP de SMS adiciona o conteúdo à biblioteca de conteúdo

Depois de copiar cada arquivo, pkgXferMgr instrui o DP a adicionar o arquivo à biblioteca de conteúdo executando métodos na SMS_DistributionPoint classe WMI no namespace provedor de SMS DP (root\SCCMDP). Quando o conteúdo é adicionado com êxito à Biblioteca de conteúdo, SMSDPProv.log mostra o seguinte:

1304 (0x518) O conteúdo '<PackageID.1>' do pacote '<PackageID>' foi adicionado à biblioteca de conteúdo com êxito

Etapa 8: DistMgr processa as mensagens status enviadas por PkgXferMgr

Para processar o arquivo STA de entrada (enviado na etapa 6-3), o DistMgr usa o thread de processamento de replicação. Esse thread acorda para processar o arquivo STA, atualiza a linha Tipo 2 nas PkgStatus tabelas do banco de dados e gera uma mensagem status com a ID 2330, o que significa "O Gerenciador de Distribuição distribuiu com êxito o pacote para o ponto de distribuição".

SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Processamento do arquivo de entrada E:\ConfigMgr\inboxes\distmgr.box\INCOMING\FV8S6B6M.STA.
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Processamento de STA para DP regular ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Processamento status atualização para package <PACKAGEID>
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Atualizou com êxito o servidor de pacotes status para ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\ para packageID<>, Status 3
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) STATMSG: ID=2330 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=6116 GMTDATE=Mon 16 de maio 19:28:16.577 2016 ISTR0="<PackageID>" ISTR1="["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=404 AVAL1="["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\"
SMS_DISTRIBUTION_MANAGER 6116 (0x17e4) ~Excluir com êxito o pacote status arquivo E:\ConfigMgr\inboxes\distmgr.box\INCOMING\FV8S6B6M. STA

Esse thread executa a consulta a seguir para atualizar o status no banco de dados.

update PkgStatus set Status = 3, UpdateTime = N'Date Time', Location = N'MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\SMSPKGC$\\PackageID\', ShareName = N'', HTTPUrl = N'http://PS1DP2.CONTOSO.COM/SMS_DP_SMSPKG$/\PackageID', SourceVersion = 1, Personality = 0, State = 0, SigURL = N'http://PS1DP2.CONTOSO.COM/SMS_DP_SMSSIG$/\PackageID', SigLocation = N'MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\SMSSIG$\\PackageID.1.tar'  where ID = N'\PackageID' and Type = 2 and SiteCode = N'PS1' and PkgServer = N'["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\'

Etapa 9: as alterações de status de pacote são replicadas para outros sites por meio do DRS

Depois que o pacote status for atualizado no banco de dados, ele será replicado para outros sites por meio da replicação de banco de dados.

Distribuir um pacote para puxar DP

As etapas a seguir descrevem o fluxo de eventos quando um Pacote é distribuído a um pull DP no site primário e esse servidor de site primário em questão já tem uma cópia do pacote na biblioteca de conteúdo.

Etapa 1: o administrador distribui o pacote para o DP. O administrador pode fazer isso no console de administração conectado diretamente ao site primário em questão ou ao site de administração central ou a um site primário diferente

Depois que o administrador distribuiu o pacote para um DP do console, o console chama o AddDistributionPoints método da classe derivada apropriada de SMS_Package (SMS_ContentPackage para aplicativos no exemplo abaixo) para adicionar o DP especificado ao pacote. SMSProv.log mostra:

Contexto do Provedor de SMS 22172 (0x569c): SMSAppName=Configuration Manager Console do Administrador~
Provedor de SMS 22172 (0x569c) ExecMethodAsync : SMS_ContentPackage.PackageID='P010000F'::AddDistributionPoints~
Provedor de SMS 22172 (0x569c) CExtProviderClassObject::D oExecuteMethod AddDistributionPoints~
Auditoria do Provedor de SMS 22172 (0x569c): CONTOSO\Administração de usuário chamado de método auditado de uma instância de classe SMS_ContentPackage.~

Quando esse método é chamado, o Provedor de SMS insere uma linha em PkgServers com Action definido como 2 (ADD) e uma notificação é criada na PkgNotification tabela.

Etapa 2: se o administrador distribuir o pacote de um site primário diferente ou do site de administração central, o DRS replicará as alterações no site em questão

Se o administrador distribuiu esse pacote com o console conectado ao site de administração central ou a um site primário diferente, o DRS replicará as alterações em PkgServers para outros sites.

Etapa 3: SMSDBMON notifica distMgr para processar o pacote

Depois que essa alteração é replicada no site em que o DP reside, o SMSDBMON detecta uma alteração na PkgNotification tabela e descarta um arquivo DistMgr.box PKN para instruir o DistMgr a processar o pacote.

SMS_DATABASE_NOTIFICATION_MONITOR RCV 29748 (0x7434): INSERT on PkgNotification for PkgNotify_Add [P010000F ][145011]
SMS_DATABASE_NOTIFICATION_MONITOR SND 29748 (0x7434): E:\ConfigMgr\inboxes\distmgr.box\P010000F. PKN [145011]

Etapa 4: DistMgr acorda para processar o pacote

O DistMgr acorda depois de detectar o arquivo PKN e processa o pacote.

  1. O thread DistMgr principal inicia um Thread de Processamento de Pacotes.

    O thread DistMgr principal adiciona o pacote à fila de processamento de pacotes e cria um thread de processamento de pacotes.

    SMS_DISTRIBUTION_MANAGER 5292 (0x14ac) Adicionar pacote 'P010000F' à fila de processamento de pacotes.
    SMS_DISTRIBUTION_MANAGER 5292 (0x14ac) ~Atualmente usando 0 de 3 threads de processamento de pacote permitidos.
    SMS_DISTRIBUTION_MANAGER 5292 (0x14ac) ~Iniciado o thread de processamento de pacotes para pacote 'P010000F', ID do thread = 0x2C44 (11332)

  2. O thread de processamento de pacote cria threads DP para processar ações de pacote e aguarda a saída delas.

    O thread de processamento de pacotes (TID 11332) processa as ações de pacote (adicionar/atualizar/remover) para os DP(s). Nesse caso, o pacote foi adicionado a um DP e o thread de processamento de pacote cria um thread DP para adicionar o pacote ao DP. Depois de criar threads(s) DP, o thread de processamento de pacote aguarda que todos os threads DP saiam antes de avançar.

    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) ~P010000F de pacote de processamento (SourceVersion:3; StoredVersion:3)
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) Nenhuma ação especificada para o pacote P010000F, no entanto, pode haver alterações de servidor de pacote para este pacote.
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) Comece a adicionar P010000F de pacote ao servidor ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\...
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) ~Created DP processing thread 22444 for addition or update of package P010000F on server ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) ~Aguardando a conclusão de todos os threads DP para o thread de processamento de P010000F de pacote.

  3. O thread DP cria um trabalho PkgXferMgr para transferir conteúdo para os DPs e saídas.

    O thread DP (TID 22444) começa a trabalhar na adição do pacote ao DP. Os threads DP não copiam o conteúdo do pacote diretamente para o DP e, em vez disso, criam um trabalho para o Gerenciador de Transferência de Pacote (PkgXferMgr) instruindo-o a copiar o conteúdo do pacote para o DP. As entradas de log a seguir mostram o thread DP criando um trabalho PkgXferMgr. Depois que o trabalho é criado, o trabalho do thread DP é feito e o thread DP sai.

    SMS_DISTRIBUTION_MANAGER 22444 (0x57ac) Thread DP: tentando adicionar ou atualizar P010000F de pacote no DP ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER servidor de pacote 22444 (0x57ac) ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\ é um PullDP.
    SMS_DISTRIBUTION_MANAGER 22444 (0x57ac) ~Trabalho de transferência de pacote criado para enviar P010000F de pacote para o ponto de distribuição ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\.
    SMS_DISTRIBUTION_MANAGER 22444 (0x57ac) STATMSG: ID=2357 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=P01SITE. CONTOSO.COM SITE=P01 PID=36968 TID=22444 GMTDATE=Mon Jan 07 20:05:18.665 2019 ISTR0="P010000F" ISTR1="["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="P010000F" AID1=404 AVAL1="["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\"

    Quando o thread DP cria um trabalho PkgXferMgr, ele o faz inserindo uma linha na DistributionJobs tabela.

    insert into DistributionJobs (DPID,PkgID,PackageVersion,State,CreationTime,Action) values(8,N'P010000F',3,0,N'2019/01/07 20:05:18',1)
    

    Depois de criar o trabalho, o thread DP também redefine a Ação para o DP na PkgServers_L tabela.

  4. O thread de processamento de pacote sai após a saída de todos os threads DP.

    Depois que todos os threads DP saem, o thread de processamento de pacotes também sai.

    SMS_DISTRIBUTION_MANAGER thread 11332 (0x2c44) ~DP para P010000F de pacote com o identificador de thread 00000000003E2C e a ID do thread 22444 terminou.
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) ~Todos os threads DP foram concluídos para o thread de processamento de P010000F de pacote.
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) ~StoredPkgVersion (3) do pacote P010000F. StoredPkgVersion no banco de dados é 3.
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) ~SourceVersion (3) do pacote P010000F. SourceVersion no banco de dados é 3.
    SMS_DISTRIBUTION_MANAGER 11332 (0x2c44) ~Sair do thread de processamento de pacotes para P010000F de pacote.

Etapa 5: SMSDBMON notifica PkgXferMgr para processar o trabalho

Depois que o trabalho PkgxferMgr é criado, o SMSDBMON desta vez detecta uma alteração na DistributionJobs tabela e descarta um arquivo PkgTransferMgr.box PKN para instruir PkgXferMgr a processar o trabalho.

SMS_DATABASE_NOTIFICATION_MONITOR RCV (0x7434) 29748: UPDATE on DistributionJobs for DistributionJob_Creation [P010000F ][145013]
SMS_DATABASE_NOTIFICATION_MONITOR 29748 (0x7434) SND: E:\ConfigMgr\inboxes\PkgTransferMgr.box\P010000F. PKN [145013]

Etapa 6: PkgXferMgr acorda para processar o trabalho

  1. O thread PkgXferMgr principal cria um thread de envio de pull DP para enviar o pacote para o DP especificado.

    SMS_PACKAGE_TRANSFER_MANAGER 32936 (0x80a8) Solicitação de envio encontrada com ID: 190, Pacote: P010000F, Versão:3, Prioridade: 2, Destino: P01PDP1.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 32936 (0x80a8) ~Criar thread de envio (ID do thread = 0x2B4C)

  2. Pull DP sending thread envia uma notificação para o pull DP

    Ao contrário de um thread de envio regular, o pull DP sending thread (TID 11084) instrui o pull DP a começar a baixar o conteúdo enviando uma notificação. Isso é feito em 4 fases.

    Fase 1: Pull DP sending thread checks to see if the content being distributed to the pull DP is available on a source DP(s). Se o conteúdo não estiver disponível no DP de origem, o thread de envio de pull DP terminará com a mensagem abaixo no log e gerará a ID da Mensagem de Status 8212 , o que significa "Este ponto de distribuição pull não tem fontes das quais ele pode baixar conteúdo. Vamos tentar novamente mais tarde. As tentativas são tentadas posteriormente com base nas configurações de repetição configuradas na guiaPonto de Distribuição de Pullde Configuração de Componente de Distribuição> de Software.

    ~Não é possível encontrar locais de origem para um ou mais conteúdos em P0100009 de pacote, para P01PDP1 de pull DP. CONTOSO.COM. Notificação não enviada.
    ~ Falha na notificação pullDP. Contagem de falhas = 1/30, Hora da reinicialização = 1/10/2019 02:00:42 Hora padrão do leste
    STATMSG: ID=8212 SEV=I LEV=M SOURCE='SMS Server' COMP='SMS_PACKAGE_TRANSFER_MANAGER' SYS=P01SITE. CONTOSO.COM SITE=P01 PID=2336...

    Esta é a consulta executada para marcar se o conteúdo estiver disponível em um DP de origem:

    SELECT p.SourceDPServerName FROM PullDPMap p INNER JOIN ContentDPMap c ON p.SourceDPServerName = c.ServerName WHERE c.AccessType = 1 AND p.PullDPServerName = 'P01PDP1.CONTOSO.COM' AND c.ContentID = 'P0100009' AND c.Version = 4
    

    Fase 2: Pull DP sending thread checks to see if the pull DP has capacity for more jobs. Por padrão, os DPs pull podem lidar com 50 trabalhos simultaneamente. Isso é controlado pela propriedade SCF pullDP Number Of Active Jobs e não é recomendável aumentar a capacidade porque pode introduzir problemas de escalabilidade.SMS_DISTRIBUTION_MANAGER Se o pull DP já estiver funcionando na capacidade máxima (ou seja, ele tem 50 trabalhos em execução), o pull DP que envia thread termina com a mensagem abaixo no log e tenta novamente com base nas configurações de repetição configuradas na guiaPonto de Distribuição de Pullde Configuração de Componente de Distribuição> de Software.

    PullDP <DPNALPATH> atingiu a capacidade máxima 50
    PullDP não tem capacidade. Hora da reinicialização = <carimbo de data/hora>
    STATMSG: ID=8211 SEV=E LEV=M SOURCE="SERVIDOR SMS" COMP="SMS_PACKAGE_TRANSFER_MANAGER" SYS=P01SITE. CONTOSO.COM SITE=P01 PID=17252 TID=4712...

    Esta é a consulta usada para determinar se o pull DP está em capacidade:

    SELECT COUNT(*) FROM DistributionJobs job
    JOIN DistributionPoints dp ON dp.DPID=job.DPID AND dp.NALPath='["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\'
    WHERE job.State in (2, 3, 4) AND (job.Action<>5) AND (ISNULL(job.SendAction, '') <> '')
    

    Fase 3: Pull DP sending thread envia um arquivo de pacote de informações de pacote que contém um metadados dos arquivos que precisam ser baixados. Este arquivo é um <PackageID>. O arquivo TZ que gerou do arquivo INI do pacote da biblioteca de conteúdo dos servidores do site e é copiado para o SMS_DP$ diretório no DP de pull.

    SMS_PACKAGE_TRANSFER_MANAGER 11084 (0x2b4c) Pull DP Envio de thread começando para Trabalho: 190, pacote: P010000F, Versão: 3, Prioridade: 2, servidor: P01PDP1.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 11084 (0x2b4c) Enviando P010000F do pacote de informações do pacote para PullDP. ["Display=\\P01PDP1.CONTOSO.COM\"] MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\

    Fase 4: Pull DP sending thread cria uma instância de SMS_PullDPNotification classe no pull DP no root\SCCMDP namespace, que contém a ID do pacote, a versão do pacote e uma notificação XML. Depois de criar a instância da SMS_PullDPNotification classe, ele executa o NotifyPullDP método na SMS_DistributionPoint classe no root\SCCMDP namespace que instrui o Provedor de WMI do DP a notificar o componente pull DP para começar a baixar o conteúdo.

    SMS_PACKAGE_TRANSFER_MANAGER 11084 (0x2b4c) ~Ações WMI executadas com êxito no pull DP P01PDP1. CONTOSO.COM.
    SMS_PACKAGE_TRANSFER_MANAGER 11084 (0x2b4c) ~ notificação PullDP enviada. Contagem de tentativas = 1/30, Hora da reinicialização = 1/7/2019 16:06:04 Hora padrão do leste
    SMS_PACKAGE_TRANSFER_MANAGER 11084 (0x2b4c) Pull DP Envio de thread completo~

    O XML de notificação é gerado chamando fnGetPullDPXMLNotification. Veja como uma consulta de exemplo que gera a consulta XML de notificação se parece com a que mostra que a Ação é adicionada , pois o conteúdo não foi redistribuído:

    SELECT [dbo].[fnGetPullDPXMLNotification]('P010000F', 3, 'P01PDP1.CONTOSO.COM', 2, 'add', 1, 'O:SYG:BAD:P(A;;FA;;;BA)(A;OICIIO;GA;;;BA)(A;;0x1200a9;;;BU)(A;OICIIO;GXGR;;;BU)(A;;FA;;;BA)(A;OICIIO;GA;;;BA)', 0, 32780, '3ED23B9869F7E10E19439F11341405FF76E22022E56468DCF211475899BD2914', '') AS Notification
    

    A notificação XML contém os metadados de conteúdo junto com o local de DP de origem. Veja como uma notificação XML de exemplo se parece:

    <PullDPNotification>
       <PullDPPackageNotification PackageID='P010000F' Version='3' Action='redist' AllowFallback='true' Priority='2' PackageType='content' PackageTypeID='8' PackageFlags='16777216' PackageSize='5532' SDDL='O:SYG:BAD:P(A;;FA;;;BA)(A;OICIIO;GA;;;BA)(A;;0x1200a9;;;BU)(A;OICIIO;GXGR;;;BU)(A;;FA;;;BA)(A;OICIIO;GA;;;BA)' HashAlgorithm='32780' Hash='3ED23B9869F7E10E19439F11341405FF76E22022E56468DCF211475899BD2914' ExpandShare='0' ShareName='' ShareType='1'>
         <PullDPPackageContent ContentID='Content_3c9813ba-d7ab-4963-929c-36f90f479613.1' RelatedContentID='Content_162d6f21-176e-4e4b-a620-6e94a4b9f73e.1'>
            <DPLocation DPUrl='http://P01MP.CONTOSO.COM/SMS_DP_SMSPKG$/Content_3c9813ba-d7ab-4963-929c-36f90f479613.1' Rank='1' Type='Windows NT Server' Protocol='https' />
         </PullDPPackageContent>
       </PullDPPackageNotification>
    </PullDPNotification>
    
  3. O envio de thread do Pull DP atualiza o trabalho para que status sondagem possa começar.

    Ao contrário de um thread de envio para um DP padrão que exclui o trabalho após a conclusão bem-sucedida, o pull DP que envia thread atualiza o trabalho na DistributionJobs tabela e define o SendAction para PullQueryResultAction depois de enviar com êxito a notificação para o DP pull.

    update DistributionJobs set DPID=8,SendAction = N'PullQueryResultAction', LastUpdateTime = N'2019/01/07 21:07:14' where JobID = 194
    

    As mensagens de estado são usadas como o mecanismo principal para distribuição status relatórios do DP pull e o trabalho de distribuição permanece no banco de dados até que sejamos notificados de êxito/falha status do trabalho. PkgXferMgr inicia a votação em intervalos agendados (configuráveis na guiaPonto de Distribuição de Propriedades > do Componente de Distribuição de Software) para marcar se o conteúdo foi baixado no pull DP. Embora o pull DP envie uma mensagem de estado que contém o status de distribuição, pkgXferMgr também executa a sondagem como um mecanismo de backup para obter o status de distribuição caso pull DP não possa enviar uma mensagem de estado para o ponto de gerenciamento por algum motivo.

  4. (No intervalo de votação): Pull DP sending thread é criado para sondar o status de distribuição do pull DP.

    Um novo thread de envio de pull DP começa após Atraso antes da votação (minutos) do valor especificado nas Propriedades do Componente de Distribuição de Software para marcar status de distribuição. No exemplo abaixo, ele consulta o pull DP e descobre que o conteúdo foi instalado com êxito e envia uma mensagem status ao Distribution Manager.

    SMS_PACKAGE_TRANSFER_MANAGER 18724 (0x4924) Pull DP Envio de thread começando para Trabalho: 194, pacote: P010000F, Versão: 3, Prioridade: 2, servidor: P01PDP1.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 18724 (0x4924) ~Terminei de enviar o pacote SWD P010000F versão 3 para o ponto de distribuição P01PDP1.CONTOSO.COM
    SMS_PACKAGE_TRANSFER_MANAGER 18724 (0x4924) Enviado status ao gerenciador de distribuição para pkg P010000F, versão 3, status 3 e ponto de distribuição ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\~
    SMS_PACKAGE_TRANSFER_MANAGER 18724 (0x4924) STATMSG: ID=8210 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_PACKAGE_TRANSFER_MANAGER" SYS=P01SITE. CONTOSO.COM SITE=P01 PID=36968 TID=18724 GMTDATE=Mon Jan 07 22:22:16.059 2019 ISTR0="P010000F" ISTR1="3" ISTR2="P01PDP1.CONTOSO.COM" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=3 AID0=400 AVAL0="P010000F" AID1=410 AVAL1="3" AID2=404 AVAL2="["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\"
    SMS_PACKAGE_TRANSFER_MANAGER 18724 (0x4924) Pull DP Envio de thread completo~

    Observe que o trabalho é excluído do banco de dados quando após receber um sucesso status mensagem do DP pull, o que faz com que a votação pare.

Etapa 7: Provedor de DP sms notifica o componente pull DP (CcmExec) para processar o trabalho

Na execução do método, o NotifyPullDP Provedor de WMI do DP notifica o CcmExec, que hospeda o componente pull DP. SMSDPProv.log mostra:

4688 (0x1250) PullDP notificado com êxito

Etapa 8: Pull DP carrega os trabalhos da WMI

Ao receber uma notificação, o componente pull DP carrega os trabalhos da WMI, bem como valida o <PackageID>. Arquivo TZ copiado por PkgxferMgr.

PullDP 4404 (0x1134) CPullDPService::LoadJobsFromXML para P010000F.3
PullDP 4404 (0x1134) – P010000F.3 – O XML tem 1 trabalhos de conteúdo.
PullDP 4404 (0x1134) CPullDPPkgContJob::LoadContentJobFromXML(): Set JobState = NotStarted
PullDP 4404 (0x1134) - P010000F.3 - Trabalho de conteúdo carregado {C10457F9-DE3A-4B45-878C-345919AFF97E} para conteúdo Content_3c9813ba-d7ab-4963-929c-36f90f479613.1 de XML...
PullDP 4404 (0x1134) CPullDPkgJob::LoadJobFromXML() trabalho carregado com êxito para pacote P010000F.3, há 1 trabalhos de conteúdo. ...
PullDP 4404 (0x1134) Informações de conteúdo verificadas com êxito Hash E:\SMS_DP$\P010000F.tz :3ED23B9869F7E10E19439F11341405FF76E2202E56468DCF211475899BD2914
PullDP 4404 (0x1134) CPullDPService::ExecuteJobs(). 1 trabalho a fazer

Etapa 9: Pull DP cria trabalhos de conteúdo para baixar o conteúdo associado ao pacote

PullDP 4404 (0x1134) P010000F.3 Download Inicial há 1 trabalhos de conteúdo.
PullDP 3812 (0xee4) Trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E} em execução.
PullDP 3812 (0xee4) ContentExecuteJob {C10457F9-DE3A-4B45-878C-345919AFF97E} (estado: 1-NotStarted) para conteúdo do pacote P010000F.3 Content_3c9813ba-d7ab-4963-929c-36f90f479613.1.

No exemplo acima, o trabalho {C10457F9-DE3A-4B45-878C-345919AFF97E} está associado ao conteúdo Content_3c9813ba-d7ab-4963-929c-36f90f479613.1. Para um pacote com vários itens de conteúdo, você verá o número de trabalhos (com uma ID exclusiva) associado ao pacote.

PullDP 1320 (0x528) P010000A.2 Download Inicial há dois trabalhos de conteúdo.
PullDP 5012 (0x1394) ContentExecuteJob {55692006-DFE8-4357-86D9-9839C8BF79CF} (estado: 1-NotStarted) para o conteúdo do pacote P010000A.2 2484568c-7aba-44ae-8557-05b61d62e70d.
PullDP 4112 (0x1010) ContentExecuteJob {7175CD81-CF67-48C9-AA22-010BF60B640E} (estado: 1-NotStarted) para conteúdo do pacote P010000A.2 c085b4ba-8e8f-42bf-8e2d-bc1067697722.

Etapa 10: (Se aplicável) Pull DP baixa assinatura de conteúdo

(Se aplicável) O trabalho de conteúdo cria um trabalho DTS (Serviço de Transferência de Dados) para baixar a assinatura do pacote. O arquivo de assinatura é um arquivo TAR que é baixado do SMSSIG$ diretório virtual do ponto de distribuição de origem e contém as assinaturas RDC para cada arquivo no conteúdo. As assinaturas RDC são usadas para determinar se o conteúdo do arquivo foi alterado e se o conteúdo delta ou o conteúdo completo deve ser baixado. Essa etapa só é aplicável ao conteúdo que foi alterado, portanto, você pode nem sempre ver essa etapa e ver a etapa 11 em vez disso.

PullDP 3812 (0xee4) Trabalho de DTS do SignatureDownload criado {3C962758-7ABE-40F2-A585-E5B59E378BEA} para pacote P010000F.3, id de conteúdo Content_3c9813ba-d7ab-4963-929c-36f90f479613.1. JobState = NotStarted
PullDP 3812 (0xee4) CPullDPPkgContJob::NotifyDeltaDownload. JobState = [Downloading Signature] Content_3c9813ba-d7ab-4963-929c-36f90f479613.1 para o pacote P010000F.3 id de trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E}
PullDP 752 (0x2f0) ContentExecuteJob {C10457F9-DE3A-4B45-878C-345919AFF97E} (estado: 4-Baixar Assinatura) para conteúdo do pacote P010000F.3 Content_3c9813ba-d7ab-4963-929c-36f90f479613.1.

DataTransferService.log mostra o progresso do trabalho DTS, que cria um trabalho BITS para baixar o arquivo de assinatura e notifica após a conclusão:

DataTransferService 3812 (0xee4) DTSJob {3C962758-7ABE-40F2-A585-E5B59E378BEA} criado para baixar de '<https://P01MP.CONTOSO.COM:443/SMS_DP_SMSSIG$>" para 'E:\SMS_DP$\P010000F\Content_3c9813ba-d7ab-4963-929c-36f90f479613.1'.
DataTransferService 3856 (0xf10) Download inicial do BITS para o trabalho DTS '{3C962758-7ABE-40F2-A585-E5B59E378BEA}'.
DataTransferService 3856 (0xf10) Trabalho inicial do BITS '{43647077-986C-4727-A954-B327ECA50302}' para Trabalho DTS '{3C962758-7ABE-40F2-A585-E5B59E378BEA}' no usuário 'S-1-5-18'.
DataTransferService 3856 (0xf10) Adicionando ao trabalho BITS: Content_3c9813ba-d7ab-4963-929c-36f90f479613.1.tar
DataTransferService 2528 (0x9e0) DTSJob {3C962758-7ABE-40F2-A585-E5B59E378BEA} concluiu o download com êxito.
DataTransferService 3856 (0xf10) Execute chamado para trabalho DTS '{3C962758-7ABE-40F2-A585-E5B59E378BEA}'. Estado atual: 'RetrievedData'.
DataTransferService 3856 (0xf10) DTSJob {3C962758-7ABE-40F2-A585-E5B59E378BEA} no estado 'NotifiedComplete'.
O trabalho DTS do DataTransferService 3856 (0xf10) {3C962758-7ABE-40F2-A585-E5B59E378BEA} foi concluído:

Pull DP recebe a notificação de conclusão e processa as assinaturas para determinar se o download completo ou delta é necessário.

Mensagem DTS pullDP 4300 (0x10cc) para trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E} recebida, pesquisando 1 trabalho ativo para qualquer que contenha esse trabalho de conteúdo. O trabalho DTS é {3C962758-7ABE-40F2-A585-E5B59E378BEA}
A mensagem DTS do PullDP 4300 (0x10cc) foi recebida para P010000F.3, o trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E}, status é 0x0 :
PullDP 3856 (0xf10) ContentExecuteJob {C10457F9-DE3A-4B45-878C-345919AFF97E} (estado: 5 assinaturas baixadas) para conteúdo do pacote P010000F.3 Content_3c9813ba-d7ab-4963-929c-36f90f479613.1.

Etapa 11: Pull DP cria um trabalho DTS (DataTransferService) para download de conteúdo

Pull DP cria um trabalho de download para o conteúdo. Neste exemplo, o conteúdo não existia no DP pull para que um trabalho DTS de download completo seja criado para o pacote. O trabalho DTS pode ser usado para acompanhar o processo de download no DataTransferService.log na próxima etapa:

Mensagem DTS pullDP 4300 (0x10cc) para trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E} recebida, pesquisando 1 trabalho ativo para qualquer que contenha esse trabalho de conteúdo. O trabalho DTS é {3C962758-7ABE-40F2-A585-E5B59E378BEA}
A mensagem DTS do PullDP 4300 (0x10cc) foi recebida para P010000F.3, o trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E}, status é 0x0 :
PullDP 3856 (0xf10) ContentExecuteJob {C10457F9-DE3A-4B45-878C-345919AFF97E} (estado: 5 assinaturas baixadas) para conteúdo do pacote P010000F.3 Content_3c9813ba-d7ab-4963-929c-36f90f479613.1. ...
Arquivo PullDP 3856 (0xf10) para baixar: ConfigMgrTools.msi
PullDP 3856 (0xf10) Content_3c9813ba-d7ab-4963-929c-36f90f479613.1: 0 arquivos já existem, 1 arquivos para baixar
PullDP 3856 (0xf10) Trabalho de DTS do FullDownload(Manifest) criado {78635652-3D12-4A26-A51B-D553934ECB54} para pacote P010000F.3, ID de conteúdo Content_3c9813ba-d7ab-4963-929c-36f90f479613.1, id de trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E}.

Etapa 12: O DTS cria um trabalho bits que baixa o conteúdo e envia uma notificação de conclusão

DataTransferService.log mostra o progresso do trabalho. Com o log verboso habilitado para o pull DP, PullDP.log mostraria mais informações sobre o progresso do download também.

DataTransferService 3856 (0xf10) DTSJob {78635652-3D12-4A26-A51B-D553934ECB54} criado para baixar de '<https://P01MP.CONTOSO.COM:443/SMS_DP_SMSPKG$/Content_3c9813ba-d7ab-4963-929c-36f90f479613.1>" para 'E:\SMS_DP$\P010000F\Content_3c9813ba-d7ab-4963-929c-36f90f479613.1\3'.
Trabalho de BITS inicial do DataTransferService 3812 (0xee4) '{04498466-5A8E-4A22-97F2-A66306143A20}' para D Trabalho doTS '{78635652-3D12-4A26-A51B-D553934ECB54}' no usuário 'S-1-5-18'.
DataTransferService 3812 (0xee4) DTSJob {78635652-3D12-4A26-A51B-D553934ECB54} no estado 'DownloadingData'.
O trabalho DTS do DataTransferService 752 (0x2f0) {78635652-3D12-4A26-A51B-D553934ECB54} foi concluído:

Etapa 13: Pull DP move o conteúdo para o estado Baixado

Depois que o trabalho DTS for concluído, o pull DP será notificado e moverá o conteúdo para o estado Baixado :

Mensagem DTS pullDP 3812 (0xee4) para trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E} recebida, pesquisando 1 trabalho ativo para qualquer que contenha esse trabalho de conteúdo. O trabalho DTS é {78635652-3D12-4A26-A51B-D553934ECB54}
A mensagem DTS do PullDP 3812 (0xee4) foi recebida para P010000F.3, o trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E}, status é 0x0 :
PullDP 3856 (0xf10) ContentExecuteJob {C10457F9-DE3A-4B45-878C-345919AFF97E} (estado: 9-Download) para conteúdo do pacote P010000F.3 Content_3c9813ba-d7ab-4963-929c-36f90f479613.1.

Etapa 14: o conteúdo é movido para a biblioteca de conteúdo e o estado passa para Bem-sucedido

Depois que o conteúdo é baixado com êxito, pull DP move o conteúdo para a biblioteca de conteúdo (que também é conhecida como Armazenamento de Instância Única). Depois que o conteúdo é movido para a biblioteca de conteúdo, o conteúdo passa para o estado SIApplied seguido pelo estado bem-sucedido .

PullDP 3856 (0xf10) CPullDPPkgContJob::ApplySingleInstancing(): JobState = Baixado
PullDP 3856 (0xf10) CPullDPPkgContJob::NotifySIApplied(). JobState = SIApplied
PullDP 3812 (0xee4) Trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E} em execução.
PullDP 3812 (0xee4) ContentExecuteJob {C10457F9-DE3A-4B45-878C-345919AFF97E} (estado: 13-SIApplied) para conteúdo do pacote P010000F.3 Content_3c9813ba-d7ab-4963-929c-36f90f479613.1.
...
PullDP 3812 (0xee4) CPullDPPkgContJob::NotifySucceeded(). Trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E} para pacote P010000F.3 e conteúdo Content_3c9813ba-d7ab-4963-929c-36f90f479613.1 foi concluído com êxito. JobState = Êxito
PullDP 3812 (0xee4) Notificação de que o trabalho de conteúdo {C10457F9-DE3A-4B45-878C-345919AFF97E} para pacote P010000F.3 foi concluído.

Depois que cada item de conteúdo é adicionado à biblioteca de conteúdo, SMSDPProv.log também é notificado e relata o seguinte:

4688 (0x1250) Conteúdo 'Content_3c9813ba-d7ab-4963-929c-36f90f479613.1' para pacote 'P010000F' foi adicionado à biblioteca de conteúdo com êxito

Observe que pode haver vários itens de conteúdo associados a um único pacote (por exemplo, um aplicativo com mais de um Tipo de Implantação ou um Pacote de Atualização de Software). Para cada conteúdo associado ao pacote, um trabalho DTS é criado para download de conteúdo e o conteúdo é movido para a biblioteca de conteúdo (estado bem-sucedido ) após a conclusão bem-sucedida. Por causa disso, você pode ver vários itens de conteúdo para uma mudança de pacote para o estado bem-sucedido no PullDP.log mas o pacote geral status ainda pode permanecer no estado em andamento se outros itens de conteúdo que fazem parte do pacote ainda estiverem baixando.

Etapa 15: depois que todo o conteúdo é baixado, o pacote passa para o estado 'Bem-sucedido'

Depois que todos os trabalhos de conteúdo do pacote tiverem sido concluídos com êxito e aplicados à biblioteca de conteúdo, pull DP move o pacote para o estado bem-sucedido .

PullDP 3812 (0xee4) Todos os 1 trabalhos de conteúdo para P010000F.3 foram concluídos, notificando o sucesso para este trabalho pull dp.
PullDP 3812 (0xee4) P010000F.3 concluído com êxito, limpará o estado do trabalho de conteúdo armazenado.

Etapa 16: Pull DP envia uma mensagem de estado para o ponto de gerenciamento (MP)

Após a conclusão do download, uma mensagem de estado é enviada para o ponto de gerenciamento com a ID do Estado 1 indicando êxito.

PullDP 3812 (0xee4) Relatar 0x00000001 de mensagem de estado (1) para MP para o pacote 'P010000F.3'
PullDP 3812 (0xee4) A solicitação foi bem-sucedida.
PullDP 3812 (0xee4) CPullDPResponse::ReportPackageState return value 0x00000000.

Com o log verboso e depurado habilitado, você pode ver todo o corpo da mensagem:

Relatório de envio pullDP 3812 (0xee4)
PullDP 3812 (0xee4) Relatório ReportHeader><Identification><Machine><ClientInstalled>0</ClientInstalled><ClientType>1</ClientType><Unknown>0</Unknown><ClientID IDType="0" IDFlag="1">925b0ab0-247b-466b-be0f-93d7cb032c87</ClientID><ClientVersion>5.00.0000.0000</ClientVersion><NetBIOSName>P01PDP1.CONTOSO.COM</NetBIOSName><CodePage>437</CodePage><><<SystemDefaultLCID>1033</SystemDefaultLCID></Machine></Identification><ReportDetails><ReportContent>StateMessage</ReportContent><ReportType>Full</ReportType><Date>20190107200618.000000+000</Date><Version>1.0</Version><Format>1.1</Format></ReportDetails></ReportHeader>
<ReportBody><StateMessage MessageTime="20190107200618.00000+000" SerialNumber="3"><Topic ID="P010000F" Type="902" IDType="0"/><State ID="1" Criticality="0"/><UserParameters Flags="0" Contagem="4"><Param>P010000F</Param><Param>["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\</Param><Param{04AD1BB3-5E54-457A-9873-DFB2E8035090}</Param><Param>></Param></UserParameters></StateMessage></ReportBody>

Durante o download de conteúdo, há mensagens de estado intermediárias enviadas ao MP que incluem o percentual de download. Para ver todas as IDs de Estado disponíveis, confira Dicas avançadas de solução de problemas para Distribuição de Conteúdo.

Etapa 17: Pull DP limpa o estado do trabalho de conteúdo no WMI

Depois de enviar a mensagem de estado Success , pull DP limpa os estados de trabalho para o pacote.

PullDP 3812 (0xee4) Limpar estados de trabalho de conteúdo para todos os 1 trabalhos de conteúdo no pacote P010000F.3.
PullDP 3812 (0xee4) CPullDPService::ClearCompletedJobs(), removendo 1 trabalhos concluídos.
PullDP 3812 (0xee4) Removendo trabalho para pacote P010000F.3 da matriz de trabalho e WMI.
PullDP 3812 (0xee4) Limpar estados de trabalho de conteúdo para todos os 1 trabalhos de conteúdo no pacote P010000F.3.

Etapa 18: MP_Relay ponto de extremidade no MP recebe a mensagem de estado e a move para o servidor do site

MP_Relay o ponto de extremidade no ponto de gerenciamento processa a mensagem de estado e roteia o arquivo SMX de mensagem de estado para o auth\statesys.box\incoming diretório no servidor do site. Se o MP estiver co-localizado no servidor do site (exemplo abaixo), ele será enviado diretamente para o inboxes\auth\statesys.box\incoming diretório. Se o MP for remoto, ele o moverá para \mp\outboxes\StateMsg.box o diretório no MP e o MPFDM (gerenciador de expedição de arquivos) do MP moverá o arquivo para o inboxes\auth\statesys.box\incoming diretório no servidor do site.

MP_RelayEndpoint 25912 (0x6538) Manipulador de Mensagens mp: iniciar o processamento de mensagens para Retransmissão. -----------------------
MP_RelayEndpoint 25912 (0x6538) Manipulador de Mensagens mp: FileType=SMX
MP_RelayEndpoint corpo da mensagem 25912 (0x6538) :
<Report><ReportHeader><Identification><Machine><ClientInstalled>0</ClientInstalled><ClientType>1</ClientType><Unknown>0</Unknown><ClientID IDType="0" IDFlag="1">925b0ab0-247b-466b-be0f-93d7cb032c87</ClientID><ClientVersion>5.00.0000.0000</ClientVersion><NetBIOSName>P01PDP1.CONTOSO.COM</NetBIOSName><CodePage>437</CodePage><SystemDefaultLCID>1033/SystemDefaultLCID/Machine></Identification><ReportDetails><ReportContent>StateMessage</ReportContent><ReportType>Full</ReportType><Date>20190107200618.000000+000</Date><Version>1.0</Version><Format>1.1</Format></ReportDetails></ReportHeader><<>
<ReportBody><StateMessage MessageTime="20190107200618.00000+000" SerialNumber="3"><Topic ID="P010000F" Type="902" IDType="0"/><State ID="1" Criticality="0"/><UserParameters Flags="0" Contagem="4"><Param>P010000F</Param><Param>["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\</Param><Param{04AD1BB3-5E54-457A-9873-DFB2E8035090}</Param><Param>></Param></UserParameters></StateMessage></ReportBody>
</Relatório>
MP_RelayEndpoint 25912 (0x6538) Inv-Relay Tarefa: Processamento do corpo da mensagem
MP_RelayEndpoint 25912 (0x6538) Retransmissão: Dir outbox: E:\ConfigMgr\inboxes\auth\statesys.box\incoming

Observe que o log verboso e depurador deve ser habilitado no MP para ver entradas de log acima no MP. Sem logs verbosos e depuração, MP_Relay.log apenas registrará "".

Etapa 19: o componente do Sistema de Estado no servidor do site processa a mensagem de estado no banco de dados

Depois que o arquivo SMX da mensagem de estado chega ao diretório, o StateSys.box\incoming componente Sistema de Estado no servidor do site processa a mensagem. Todas as mensagens de estado são processadas chamando spProcessReport o procedimento armazenado. Para puxar mensagens de estado DP, spProcessReport chamadas spProcessPullDPMessage que atualizam a PullDPResponse tabela com os detalhes da mensagem de estado.

SMS_STATE_SYSTEM CMessageProcessor 23544 (0x5bf8) – Arquivo de processamento: N_6RB4OA3A. SMX
SMS_STATE_SYSTEM CMessageProcessor 23544 (0x5bf8) - o cmdline para DB exec dbo.spProcessStateReport N'?<Report><ReportHeader><Identification><Machine><ClientInstalled>0</ClientInstalled><ClientType>1</ClientType><Unknown>0</Unknown><ClientID IDType="0" IDFlag="1">925b0ab0-247b-466b-be0f-93d7cb032c87</ClientID><ClientVersion>5.00.0000.0000</ClientVersion><NetBIOSName>P01PDP1.CONTOSO.COM</NetBIOSName><CodePage>437</CodePage><SystemDefaultLCID>1033/SystemDefaultLCID/Machine></Identification><ReportDetails><ReportContent>StateMessage</ReportContent><ReportType>Full</ReportType><Date>20190107200618.000000+000</Date><Versão>1..0</Version><Format>1.1</Format></ReportDetails></ReportHeader>~~ <ReportBody><StateMessage MessageTime="20190107200618.000000+000" SerialNumber="3"><><<ID do tópico="P010000F" Type="902" IDType="0"/><State ID="1" Criticality="0"/><UserParameters Flags="0" Count="4"Param P010000F/Param Param["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:"4"><Param>P010000F</Param><Param>["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\</Param><Param>{04AD1BB3-5E54-457A-9873-DFB2E8035090}</Param><Param/Param><></UserParameters></StateMessage></ReportBody>~~</Report>~~'

Observe que StateSys.log não registra o corpo da mensagem, a menos que o log verboso para StateSys.log esteja habilitado. Para habilitar o log verboso para StateSys.log, consulte Habilitar log verboso.

Aqui está o trecho do spProcessReport procedimento armazenado que processa as mensagens de estado pull DP:

else if @TopicType=902 -- Pull Distribution Point  
        exec @Ret=spProcessPullDPMessage @SenderID=@SenderID, @MessageTime=@tmMessageTime, @PkgID=@TopicID, @PkgVersion=@MessageSerialNumber, @StateID=@StateID, @P1=@P1, @P2=@P2, @P3=@P3, @P4=@P4, @P5=@P5, @Error=@Error OUTPUT  

Etapa 20: SMSDBMON notifica distMgr para atualizar o status

Depois PullDPResponse que a tabela é atualizada, o SMSDBMON detecta uma alteração na tabela e descarta um . Arquivo PUL para DistMgr processar, em que o nome do arquivo identifica a linha que foi inserida/modificada.

SMS_DATABASE_NOTIFICATION_MONITOR RCV 29748 (0x7434): INSERT no PullDPResponse para PullDPResponse_UpdIns [72057594037928008 ][145014]
SMS_DATABASE_NOTIFICATION_MONITOR 29748 (0x7434) SND: E:\ConfigMgr\inboxes\distmgr.box\incoming\72057594037928008.PUL [145014]

Etapa 21: O DistMgr atualiza o status de distribuição

O DistMgr processa o . Arquivo PUL e recupera a linha da PullDPResponse tabela com base no nome do arquivo e atualiza o pacote status. Depois que a resposta é processada, o DistMgr exclui a linha processada da PullDPResponse tabela.

SMS_DISTRIBUTION_MANAGER SQL>>>32876 (0x806c) selecione s.ID, s.PkgServer, s.SiteCode, p.StoredPkgVersion, s.Status, r.PkgVersion, r.ActionState, r.ActionData, p.PkgFlags, p.ShareType, CONVERT(VARCHAR(64), r.MessageTime, 127) AS MessageTime from PullDPResponse r join PkgStatus s on r.PkgStatusID = s.PKID AND r.PkgStatusID = 72057594037928008 join SMSPackages p on s.ID = p.PkgID
SMS_DISTRIBUTION_MANAGER 32876 (0x806c) ~Processamento da resposta PullDP P01 - ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\
SMS_DISTRIBUTION_MANAGER pacote 32876 (0x806c) P010000F, versão 3(3), ActionState 1, PkgStatus 0, ActionData =
SMS_DISTRIBUTION_MANAGER 32876 (0x806c) ~Atualizou com êxito o servidor de pacotes status para ["Display=\\P01PDP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=P01"]\\P01PDP1.CONTOSO.COM\ para P010000F de pacote, Status 3
SMS_DISTRIBUTION_MANAGER 32876 (0x806c) SQL>>>DELETE FROM PullDPResponse WHERE PkgStatusID = 72057594037928008 AND MessageTime = '2019-01-07T20:06:18'
SMS_DISTRIBUTION_MANAGER 32876 (0x806c) ~Arquivo de resposta PullDP processado com êxito E:\ConfigMgr\inboxes\distmgr.box\INCOMING\72057594037928008.PUL

Etapa 22: A replicação do banco de dados replica a alteração de status para outros sites

Depois que o pacote status for atualizado no banco de dados, ele será replicado para outros sites por meio da replicação de banco de dados.

Atualizar um pacote

Quando você atualiza um pacote, o conteúdo do pacote fica ressentido com todos os pontos de distribuição aos quais o pacote foi distribuído. Isso é feito incrementando a versão do Package Source e somente as alterações de conteúdo são enviadas aos DPs em vez de enviar todo o conteúdo novamente.

As etapas a seguir descrevem o fluxo de eventos que ocorrem quando um pacote é atualizado. Neste exemplo, examinaremos a operação de atualização de pacote para um pacote criado em um site primário e nos concentraremos em alterações de processo específicas para a operação de atualização do pacote.

Etapa 1: o console de administração executa o RefreshPkgSource método na SMS_Package classe WMI no namespace do Provedor de SMS

Depois que o administrador atualiza o pacote do console, o console de administração chama o RefreshPkgSource método da SMS_Package classe para atualizar o pacote. SMSProv.log mostra o seguinte:

Contexto do Provedor de SMS 4716 (0x126c): SMSAppName=Configuration Manager Console do Administrador~
Provedor de SMS 4716 (0x126c) ExecMethodAsync : SMS_Package.PackageID="<PackageID>"::RefreshPkgSource ~
Provedor de SMS 4716 (0x126c) CExtProviderClassObject::D oExecuteMethod RefreshPkgSource~
Auditoria do Provedor de SMS 4716 (0x126c): CONTOSO\Administração de usuário chamado de método auditado de uma instância da classe SMS_Package.~

Quando esse método é chamado, o Provedor de SMSPackages SMS atualiza para definir Ação como 1(UPDATE) e insere uma linha na PkgNotification tabela.

update SMSPackages set Source = N'\\PS1SITE\SOURCE\Packages\200MB_1', StoredPkgVersion = 1, UpdateMask = 32, UpdateMaskEx = 8388608, Action = 1 where PkgID = N'PackageID'
insert PkgNotification (PkgID, Priority, Type, TimeKey) values (N'PackageID', 2, 1, GetDate())  

Etapa 2: SMSDBMON notifica distMgr para processar o pacote

O SMSDBMON detecta uma alteração na PkgNotification tabela que faz com que ela solte um <PackageID>. Arquivo PKN no DistMgr.box para instruir o DistMgr a processar o pacote:

SMS_DATABASE_NOTIFICATION_MONITOR RCV 1792 (0x700): INSERT on PkgNotification for PkgNotify_Add [<PackageID>][1036610]
SMS_DATABASE_NOTIFICATION_MONITOR 1792 (0x700) SND: E:\ConfigMgr\inboxes\distmgr.box\<PackageID>. PKN [1036610]

Etapa 3: DistMgr acorda para processar o pacote após receber o arquivo PKN

  1. O thread DistMgr main inicia um thread de processamento de pacote.

    O thread DistMgr main adiciona o pacote à fila de processamento de pacotes e cria um thread de processamento de pacotes.

    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) Propriedades de pacote encontradas atualizadas notificação para o pacote '<PackageID>'
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) Adicionando o pacote '<PackageID>' à fila de processamento de pacotes.
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) ~Atualmente usando 0 em cada 3 threads de processamento de pacote permitidos.
    SMS_DISTRIBUTION_MANAGER 4824 (0x12d8) ~Iniciado o thread de processamento de pacotes para pacote '<PackageID>', ID do thread = 0x1690 (5776)

  2. O thread de processamento de pacote cria um pacote instantâneo, grava conteúdo na biblioteca de conteúdo e incrementa a versão do pacote.

    O thread de processamento de pacote (iD do thread 5776 nesse caso) começa a processar o pacote e cria um pacote instantâneo. Depois de criar o pacote instantâneo, este thread também grava o conteúdo do pacote na biblioteca de conteúdo no servidor do site:

    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Processing packageID <> (SourceVersion:1; StoredVersion:1)
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Comece a atualizar o pacote <PackageID>...
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Levando instantâneo de pacote para packageID <> da origem \\PS1SITE\SOURCE\Packages\200MB_1
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) O tamanho do pacote <PackageID>, versão 2 é 204800 KBytes
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Definição de pacote de gravação para <PackageID>
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Assinaturas rdc criadas com êxito para pacote <PackageID> versão 2
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Criando hash para o algoritmo 32780
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) O hash do algoritmo 32780 é <HashString>
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) O hash de assinatura rdc para algoritmo 32780 é 79A56464F7BAC44B3D183D5EFC1160E51F95A34FECA492AAD73BC73C8B6DBA38
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) STATMSG: ID=2376 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=5776 GMTDATE=Tue 17 de maio 18:31:23.782 2016 ISTR0="PS100039" ISTR1="" ISTR1="2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="PS100039"
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~A origem do pacote PS100039 foi alterada ou a fonte do pacote precisa ser atualizada
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Adicionar esses conteúdos ao pacote PS100039 versão 2.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~A ação do pacote é 1, a Máscara de Atualização é 32 e UpdateMaskEx é 0.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Use a unidade E para armazenar o pacote compactado.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Criou/atualizou com êxito o pacote PS100039.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) STATMSG: ID=2311 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=5776 GMTDATE=Tue 17 de maio 18:31:23.982 2016 ISTR0="PS100039" ISTR1="" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="PS100039"

  3. Os processos de thread de processamento de pacote iniciam threads DP para processar ações de pacote e aguarda a saída deles.

    O thread de processamento de pacote processa as ações de pacote para atualizar o pacote, que envolve a atualização do pacote em todos os DPs em que esse pacote é distribuído. Como há ações de pacote a serem processadas, o thread de processamento de pacote cria threads DP para executar essas ações e aguarda a saída dos threads DP antes de seguir em frente.

    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Comece a atualizar PS100039 de pacote no servidor ["Display=\\PS1SITE.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1SITE.CONTOSO.COM\...
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Created DP processing thread 920 for addition or update of package PS100039 on server ["Display=\\PS1SITE.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\PS1SITE.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Comece a atualizar PS100039 de pacote no servidor ["Display=\\PS1SYS.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1SYS.CONTOSO.COM\...
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Created DP processing thread 2060 for addition or update of package PS100039 on server ["Display=\PS1SYS.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1SYS.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Comece a atualizar PS100039 de pacote no servidor ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\...
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Created DP processing thread 6076 for addition or update of package PS100039 on server ["Display=\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) Comece a atualizar PS100039 de pacote no servidor ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\...
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Created DP processing thread 5948 for addition or update of package PS100039 on server ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\PS1DP2.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Aguardando a conclusão de todos os threads DP para o thread de processamento de PS100039 de pacote.

  4. Os threads DP iniciam e criam trabalhos PkgXferMgr para transferir conteúdo para os DPs e, em seguida, sair.

    Os threads DP começam a trabalhar na criação de um trabalho PkgXferMgr para atualizar o pacote nos DPs. Neste ponto, há quatro threads DP para quatro DPs diferentes:

    SMS_DISTRIBUTION_MANAGER 5948 (0x173c) Thread DP: tentando adicionar ou atualizar PS100039 de pacote no DP ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 5948 (0x173c) ~Trabalho de transferência de pacote criado para enviar PS100039 de pacote para o ponto de distribuição ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\.
    SMS_DISTRIBUTION_MANAGER 5948 (0x173c) executando a limpeza antes de retornar.
    SMS_DISTRIBUTION_MANAGER 5948 (0x173c) Cancelando a conexão de rede para \\PS1DP2.CONTOSO.COM\ADMIN$.

    Quando o thread DP cria um trabalho PkgXferMgr, ele o faz inserindo uma linha na DistributionJobs tabela.

    insert into DistributionJobs (DPID,PkgID,PackageVersion,State,CreationTime,Action) values(35,N'PS100039',2,0,N'2016/05/17 14:31:35',1)
    
  5. (se aplicável) O thread de processamento de pacotes cria um mini-trabalho para enviar a cópia compactada do pacote para outros sites.

    Depois que todos os threads DP terminarem de funcionar, o thread de processamento de pacotes cria um mini-trabalho para enviar a cópia compactada do pacote para outros sites, se aplicável. Este mini-trabalho é processado pelo Agendador para criar uma solicitação de envio para o Remetente transferir a cópia compactada do pacote para o site de destino:

    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Todos os threads DP foram concluídos para o thread de processamento PS100039 pacote.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Pacote PS100039 não tem um remetente preferencial.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) STATMSG: ID=2333 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=5776 GMTDATE=Tue 17 de maio 18:31:44.977 2016 ISTR0="PS100039" ISTR1="PS2" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="PS100039" ...
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Precisa enviar o pacote compactado para o pacote PS100039 para o site PS2
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Enviando uma cópia do pacote PS100039 para o site PS2
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Use a unidade E para armazenar o pacote compactado.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Configurando a raiz de transferência CMiniJob para E:\SMSPKG\PS100039. DLT.1.2
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Criado minijob para enviar cópia compactada do pacote PS100039 para o site PS2. Raiz de transferência = E:\SMSPKG\PS100039. DLT.1.2. ...
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Precisa enviar o pacote compactado para o pacote PS100039 para o site SS1
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Enviando uma cópia do pacote PS100039 para o site SS1
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Use a unidade E para armazenar o pacote compactado.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Configurando a raiz de transferência CMiniJob para E:\SMSPKG\PS100039. DLT.1.2
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Criado minijob para enviar cópia compactada do pacote PS100039 para o site SS1. Raiz de transferência = E:\SMSPKG\PS100039. DLT.1.2.

  6. O thread de processamento de pacotes sai após o processamento do pacote:

    SMS_DISTRIBUTION_MANAGER PS100039 de pacote 5776 (0x1690) é novo ou foi alterado, replicando para todos os sites aplicáveis.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~CDistributionSrcSQL::UpdateAvailableVersion PackageID=PS100039, Version=2, Status=2301
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~StoredPkgVersion (2) do pacote PS100039. StoredPkgVersion no banco de dados é 2.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~SourceVersion (2) do pacote PS100039. SourceVersion no banco de dados é 2.
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) STATMSG: ID=2301 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=5776 GMTDATE=Tue 17 de maio 18:31:45.415 2016 ISTR0="Dummy2" ISTR1="PS100039" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=1 AID0=400 AVAL0="PS100039"
    SMS_DISTRIBUTION_MANAGER 5776 (0x1690) ~Sair do thread de processamento de pacotes para PS100039 de pacote.

Etapa 4: SMSDBMON notifica PkgXferMgr para processar o trabalho

O SMSDBMON detecta uma alteração na DistributionJobs tabela e descarta um arquivo PkgTransferMgr.box PKN para instruir PkgXferMgr a processar o trabalho:

SMS_DATABASE_NOTIFICATION_MONITOR RCV (0x700) 1792: UPDATE on DistributionJobs for DistributionJob_Creation [PS100039 ][1036623]
SMS_DATABASE_NOTIFICATION_MONITOR 1792 (0x700) SND: E:\ConfigMgr\inboxes\PkgTransferMgr.box\PS100039. PKN [1036623]

Etapa 5: PkgXferMgr acorda para processar o trabalho

Para DPs padrão, um thread de envio copia o conteúdo para o DP e o processo restante é idêntico ao processo descrito na etapa 6 de Distribuir um pacote para o DP padrão.

Para DPs pull, um thread de envio de pull DP envia a notificação para o DP pull para executar o download de conteúdo. Pull DP então baixa o conteúdo do DP de origem e o processo restante é idêntico ao processo descrito na etapa 6 de Distribuir um pacote para pull DP.

Etapa 6: o pacote status as alterações são replicadas para outros sites por meio do DRS

Depois que o pacote status for atualizado no banco de dados, ele será replicado para outros sites por meio da replicação de banco de dados.

Redistribuir um pacote

Quando você redistribui um pacote para um DP, todos os arquivos de conteúdo do pacote são copiados novamente para o DP, mesmo que o conteúdo já exista na biblioteca de conteúdo no DP.

As etapas a seguir descrevem o fluxo de eventos que ocorrem quando um pacote é redistribuído para um DP. Neste exemplo, o servidor de site primário já tem uma cópia compactada do pacote. Esse processo é idêntico ao processo descrito em Distribuir um pacote para DP padrão ou Distribuir um pacote para puxar DP, portanto, aqui, apenas analisamos trechos de log detalhados para obter alterações relevantes.

Etapa 1: o administrador redistribui o pacote para o DP

Etapa 2: se o administrador redistribuiu o pacote de um site primário diferente ou do site de administração central, o DRS replicará as alterações no site em questão

Etapa 3: SMSDBMON notifica distMgr para processar o pacote

Etapa 4: DistMgr acorda para processar o pacote

  1. O thread DistMgr main inicia um thread de processamento de pacote.

  2. O thread de processamento de pacote cria threads DP para processar ações de pacote e aguarda a saída delas.

  3. Os threads DP criam um trabalho PkgXferMgr para adicionar o pacote aos DPs e, em seguida, sai.

    O thread DP começa a trabalhar na adição do pacote ao DP. Os threads DP não copiam o conteúdo do pacote diretamente para o DP, mas criam um trabalho para o Gerenciador de Transferência de Pacote (PkgXferMgr) instruindo-o a copiar o conteúdo do pacote para o DP. As entradas de log a seguir mostram o thread DP criando um trabalho PkgXferMgr. Depois que o trabalho é criado, o trabalho do thread DP é feito e o thread DP sai.

    SMS_DISTRIBUTION_MANAGER 3792 (0xed0) Thread DP: tentando adicionar ou atualizar o pacote <PackageID> no DP ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\
    SMS_DISTRIBUTION_MANAGER 3792 (0xed0) ~Trabalho de transferência de pacote criado para enviar <package PackageID> para o ponto de distribuição ["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\.
    SMS_DISTRIBUTION_MANAGER 3792 (0xed0) STATMSG: ID=2357 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_DISTRIBUTION_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=3792 GMTDATE=Mon 16 de maio 19:26:58.642 2016 ISTR0="<PackageID>" ISTR1="["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=404 AVAL1="["Display=\\PS1DP2.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP2.CONTOSO.COM\"

    Quando o thread DP cria um trabalho PkgXferMgr, ele o faz inserindo uma linha na DistributionJobs tabela. Para redistribuir um pacote, a ação é definida como 2.

    insert into DistributionJobs (DPID,PkgID,PackageVersion,State,CreationTime,Action) values(32,N'CS100026',1,0,N'2016/05/16 16:03:49',2)
    
  4. O thread de processamento de pacote sai após a saída de todos os threads DP.

Etapa 5: SMSDBMON notifica PkgXferMgr para processar o trabalho

Etapa 6: PkgXferMgr acorda para processar o trabalho

  1. O thread PkgXferMgr main cria um thread de envio.

  2. O thread de envio ou pull DP que envia thread processa o trabalho.

    DP padrão:

    O envio de thread começa a copiar o conteúdo do pacote para o DP. Esse processo envolve copiar todos os arquivos no pacote para o DP no SMS_DP$ diretório. Como o pacote foi redistribuído, pkgXferMgr mostra que Redistribute está definido como 1, o que significa que todos os arquivos serão copiados novamente para o DP mesmo que já existam na biblioteca de conteúdo no DP.

    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) Envio de thread começando para Trabalho: 583, pacote: <PackageID>, Versão: 1, Prioridade: 2, servidor: PS1DP1.CONTOSO.COM, DPPriority: 200
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) Enviado status ao gerenciador de distribuição para pkg <PackageID>, versão 1, status 0 e ponto de distribuição ["Display=\\PS1DP1.CONTOSO.COM\"]MSWNET:["SMS_SITE=PS1"]\\PS1DP1.CONTOSO.COM\~
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) Executando pacote <de pré-operações PackageID>, Ponto de distribuição PS1DP1.CONTOSO.COM
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) Envio de conteúdo <herdado PackageID.1> para packageID <>
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) Redistribute=1, Related=
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) Enviar arquivo '\\PS1DP1.CONTOSO.COM\SMS_DP$\73E055438D4731F41DB6C3BCB90919F600000226B330C73942454A174D7E26533-PackageID.1.temp<>'
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) ~Envio iniciado [E:\SCCMContentLib\FileLib\73E0\73E055438D4731F41DB6C3BCB90919F60000226B330C73942454A174D7E26533]
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) ~Tente gravar 983040 bytes em \\PS1DP1.CONTOSO.COM\SMS_DP$\73E055438D4731F41DB6C3BCB90919F60000226B330C73942454A174D7E26533-PackageID.1.temp<> na posição 208732160
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) ~Escreveu 983040 bytes para \\PS1DP1.CONTOSO.COM\SMS_DP$\73E055438D4731F41DB6C3BCB90919F60000226B330C73942454A174D7E26533-PackageID.1.temp<> na posição 208732160 em 344 tiques
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) ~Envio concluído [E:\SCCMContentLib\FileLib\73E0\73E055438D4731F41DB6C3BCB90919F60000226B330C73942454A174D7E26533]
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) Pós-ações concluídas para PS1DP1.CONTOSO.COM de DP remoto
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) ~Envio concluído com êxito
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) ~Terminei de enviar o pacote <SWD PackageID> versão 1 para o ponto de distribuição PS1DP1.CONTOSO.COM
    SMS_PACKAGE_TRANSFER_MANAGER 5272 (0x1498) STATMSG: ID=8200 SEV=I LEV=M SOURCE="SMS Server" COMP="SMS_PACKAGE_TRANSFER_MANAGER" SYS=PS1SITE. CONTOSO.COM SITE=PS1 PID=5428 TID=5272 GMTDATE=Mon 16 de maio 20:06:36.827 2016 ISTR0="<PackageID>" ISTR1="1" ISTR2="PS1DP1.CONTOSO.COM" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=2 AID0=400 AVAL0="<PackageID>" AID1=410 AVAL1="1"

    Pull DP:

    Pull DP sending thread envia uma notificação para o pull DP para começar a baixar o conteúdo. Como o pacote foi redistribuído, a notificação gerada XML mostra que a Ação está definida como redistrem, o que significa que todos os arquivos serão novamente baixados pelo DP pull mesmo que eles já existam na biblioteca de conteúdo no DP pull.

    Veja como uma consulta de exemplo que gera a consulta XML de notificação parece mostrar que a Ação é redist desde que o conteúdo foi redistribuído:

    SELECT [dbo].[fnGetPullDPXMLNotification]('P010000F', 3, 'P01PDP1.CONTOSO.COM', 2, 'redist', 1, 'O:SYG:BAD:P(A;;FA;;;BA)(A;OICIIO;GA;;;BA)(A;;0x1200a9;;;BU)(A;OICIIO;GXGR;;;BU)(A;;FA;;;BA)(A;OICIIO;GA;;;BA)', 0, 32780, '3ED23B9869F7E10E19439F11341405FF76E22022E56468DCF211475899BD2914', '') AS Notification
    

    Ao receber uma notificação para uma ação de redistribuição, PullDP.log mostrará que todo o conteúdo será recarregado mesmo que algum/todo o conteúdo possa existir na biblioteca de conteúdo.

    PullDP 3676 (0xe5c) Content_3c9813ba-d7ab-4963-929c-36f90f479613.1: redistribuir/recarregar todos os arquivos

    Depois que isso é feito, o processo restante é semelhante ao processo descrito na etapa 6 de Distribuir um pacote para puxar DP.

  3. O thread de envio envia uma mensagem status ao DistMgr.

Etapa 7: Provedor de DP de SMS adiciona o conteúdo à biblioteca de conteúdo

Etapa 8: DistMgr processa as mensagens status enviadas por PkgXferMgr

Etapa 9: as alterações de status de pacote são replicadas para outros sites por meio do DRS