Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten przewodnik ułatwia zrozumienie kroku sekwencji zadań Instalowanie aplikacji i rozwiązywanie typowych problemów, które mogą wystąpić. W tym przewodniku założono, że środowisko programu Configuration Manager zostało już zainstalowane i skonfigurowane.
Oryginalna wersja produktu: Configuration Manager current branch, Microsoft System Center 2012 Configuration Manager, Microsoft System Center 2012 R2 Configuration Manager
Oryginalny numer KB: 18408
Krok sekwencji zadań Zainstaluj aplikację instaluje aplikacje w ramach ogólnej sekwencji zadań. Ten krok umożliwia zainstalowanie zestawu określonych aplikacji lub zestawu aplikacji określonych przez dynamiczną listę zmiennych sekwencji zadań. Po uruchomieniu tego kroku instalacja aplikacji rozpoczyna się natychmiast bez oczekiwania na interwał sondowania zasad.
Omówienie
Krok Instalowanie aplikacji opisany w tym artykule obejmuje jedno zadanie instalacji aplikacji. Może również służyć do rozwiązywania problemów z instalacją wielu aplikacji na podstawie listy.
Po uruchomieniu kroku Instalowanie aplikacji aplikacja sprawdza możliwość zastosowania reguł wymagań i metody wykrywania dla typów wdrożeń aplikacji. Na podstawie wyników tego testu aplikacja instaluje odpowiedni typ wdrożenia. Jeśli typ wdrożenia zawiera zależności, typ wdrożenia zależnego jest oceniany i instalowany w ramach kroku Instalowanie aplikacji .
Uwaga 16.
Zależności aplikacji nie są obsługiwane dla nośników autonomicznych.
Krok 1. Menedżer sekwencji zadań analizuje kod XML sekwencji zadań i rozpoczyna zadanie Zainstaluj aplikację
Instalacje aplikacji w sekwencji zadań mają wiele wspólnego z instalacjami aplikacji poza sekwencją zadań. Obaj używają ustawień zgodności programu Configuration Manager. Ale nie działają dokładnie tak samo. Istnieje więcej składników ze względu na charakter uruchamiania sekwencji zadań.
W miarę postępu sekwencji zadań zachowuje stan zadań i skojarzony stan wykonywania przy użyciu zmiennych środowiskowych sekwencji zadań. Te wbudowane zmienne zawierają informacje o środowisku, w którym działa sekwencja zadań. Wartości tych zmiennych są dostępne w całej sekwencji zadań. Te wbudowane zmienne są inicjowane przed uruchomieniem kroku Zainstaluj aplikację w sekwencji zadań.
Menedżer sekwencji zadań ustawia następujące globalne zmienne środowiskowe dla następnej instrukcji:
_SMSTSCurrentActionName
Aby zainstalować aplikację_SMSTSNexInstructionPointer
do wskaźnika instrukcji przypisanego do tego zadania
Następujące wpisy są rejestrowane w SMSTS.log:
01-13-2016 17:56:35.510 TSManager 2176 (0x880) Rozpocznij wykonywanie instrukcji. Instrukcjaname: Zainstaluj aplikację. Wskaźnik instrukcji: 32
01-13-2016 17:56:35.510 TSManager 2176 (0x880) Ustaw globalną zmienną środowiskową _SMSTSCurrentActionName=Install Application
01-13-2016 17:56:35.510 TSManager 2176 (0x880) Ustawianie globalnej zmiennej środowiskowej _SMSTSNextInstructionPointer=32Menedżer sekwencji zadań zapisuje następnie stan wykonywania sekwencji zadań i środowiska (TSEnv.dat) na lokalnym dysku twardym, jak pokazano w SMSTS.log:
01-13-2016 17:56:35.510 TSManager 2176 (0x880) Pomyślnie zapisz stan wykonywania i środowisko na lokalnym dysku twardym
Menedżer sekwencji zadań uruchamia wykonywanie następnej instrukcji w sekwencji na podstawie historii wykonywania poprzedniej instrukcji i następnego wskaźnika instrukcji:
01-13-2016 17:56:35.510 TSManager 2176 (0x880) Rozpocznij wykonywanie instrukcji. Instrukcjaname: Zainstaluj aplikację. Wskaźnik instrukcji: 32
Menedżer sekwencji zadań ustawia następnie lokalne zmienne domyślne dla aplikacji:
01-13-201617:56:35.510 TSManager 2176 (0x880) Ustaw lokalną zmienną domyślną OSDApp0Description
01-13-201617:56:35.510 TSManager 2176 (0x880) Ustaw lokalną zmienną domyślną OSDApp0DisplayName
01-13-201617:56:35.510 TSManager 2176 (0x880) Ustaw lokalną zmienną domyślną OSDApp0Name
01-13-201617:56:35.510 TSManager 2176 (0x880) Ustaw lokalną zmienną domyślną OSDAppCount
01-13-201617:56:35.525 TSManager 2176 (0x880) Ustaw globalną zmienną środowiskową _SMSTSLogPath=C:\WINDOWS\CCM\Logs\SMSTSLogMenedżer sekwencji zadań ustawia wiersz polecenia dla instalacji aplikacji (smsappinstall.exe) na podstawie zasad XML sekwencji zadań, które zostały przeanalizowane, i rozpoczyna wykonywanie go przez wywołanie smsappinstall.exe. Następujący wpis jest rejestrowany w SMSTS.log:
01-13-2016 17:56:35.525 TSManager 2176 (0x880) Wykonywanie wiersza polecenia: smsappinstall.exe/app:ScopeId_GUID/Application_GUID/basevar: /continueOnError:False
W tym momencie zadanie Zainstaluj aplikację (smsappinstall.exe) rozpoczyna instalowanie aplikacji, chociaż wiersz polecenia do uruchomienia instalacji nie nastąpi jeszcze przez jakiś czas. Należy najpierw uzyskać wszystkie niezbędne informacje.
Rozwiązywanie problemów z krokiem 1
Na podstawie przepływu i wykonywania sekwencji zadań jest mało prawdopodobne, że w tym kroku procesu Zainstaluj aplikację wystąpi błąd. W tym momencie Menedżer sekwencji zadań pomyślnie przeanalizować kod XML sekwencji zadań i ustawić wskaźnik instrukcji dla bieżącego zadania. Ponadto zasady sekwencji zadań są pobierane po rozpoczęciu sekwencji zadań. Wyniki są zwracane do sekwencji zadań. Są one przechowywane w środowisku sekwencji zadań przy użyciu zmiennych zapisanych na dysku jako TSEnv.dat.
Poniżej przedstawiono niektóre elementy, które należy wziąć pod uwagę podczas badania tych problemów. Może istnieć dodatkowa informacja, która może służyć do rozwiązywania problemów z warunkiem błędu.
Napiwek
Treść zasad wybranej sekwencji zadań jest pobierana z bazy danych na początku sekwencji zadań i przechowywana w środowisku sekwencji zadań przy użyciu zmiennych.
MP_GetPolicy
spowoduje zarejestrowanie tego działania. Aby znaleźć to żądanie w dzienniku MP_GetPolicy
, wyszukaj identyfikator wdrożenia lub identyfikator sekwencji zadań.
01-13-2016 17:32:54.579 MP_GetPolicy_ISAPI 12688 (0x3190) MP GP: Ciąg zapytania przed dekodowaniem: MEH20009-MEH0000A-6F6BCC28.15_00
01-13-2016 17:32:54.579 MP_GetPolicy_ISAPI 12688 (0x3190) MP GP: IDENTYFIKATOR: MEH20009-MEH0000A-6F6BCC28
01-13-2016 17:32:54.579 MP_GetPolicy_ISAPI 12688 (0x3190) MP GP: Inicjowanie żądania z identyfikatora GUID klienta:ClientGUID.
Następująca procedura składowana jest wykonywana w celu pobrania treści zasad:
exec MP_GetPolicyBodyAfterAuthorization
Wyniki żądania treści zasad są zwracane na maszynę i zapisywane w środowisku sekwencji zadań (TSEnv.dat). Treść zasad dla sekwencji zadań i wszystkie jej zasady zależne są przechowywane przy użyciu zmiennych. Menedżer sekwencji zadań rejestruje dużą część tego, co odczytuje ze środowiska.
Krok 2. Składnik Zainstaluj aplikację ocenia zasady sekwencji zadań i przechowuje je w usłudze WMI
W tym kroku składnik Zainstaluj aplikację ocenia zasady sekwencji zadań i przechowuje je w usłudze WMI. Aplikacja sprawdza możliwość stosowania reguł wymagań i metody wykrywania dla typów wdrożeń aplikacji. CIStore
i CIStateStore
są używane do oceny stosowania i stanu elementów konfiguracji (CI) oraz zawartości danych konfiguracji skojarzonych z aplikacją i typem wdrożenia. Wynikiem jest to, że wskaźniki CI zostaną oznaczone do pobrania.
Instalacja aplikacji analizuje wiersz polecenia i identyfikuje nazwę aplikacji. Następujące wpisy są rejestrowane w SMSTS.log:
01-13-2016 17:56:35.572 InstallApplication 1608 (0x648) Nazwy aplikacji:
01-13-2016 17:56:35.572 InstallApplication 1608 (0x648) "ScopeId_GUID/Application_GUID"Instalowanie aplikacji ustawia zmienne dla aplikacji. Następujące wpisy są rejestrowane w SMSTS.log:
01-13-2016 17:56:35.666 InstallApplication 1608 (0x648) Ustawienie zmiennej TSEnv "SMSTSAppPolicyEvaluationJobID__ScopeId_GUID/Application_GUID'='"
01-13-2016 17:56:35.666 InstallApplication 1608 (0x648) Ustawienie zmiennej TSEnv "SMSTSInstallApplicationJobID__ScopeId_GUID/Application_GUID'='"Następnie wyszukuje identyfikator zakresu zasad. Następujący wpis jest rejestrowany w SMSTS.log:
01-13-2016 17:56:35.666 InstallApplication 1608 (0x648) Pobieranie wartości z TSEnv dla elementu "_SMSTSPolicy_ScopeId_GUID/Application_GUID
Teraz wyszukuje i pobiera wartość zasad aplikacji ze środowiska sekwencji zadań (TSEnv.dat). Następujący wpis jest rejestrowany w SMSTS.log:
01-13-2016 17:56:35.666 InstallApplication 1608 (0x648) Znaleziono nazwę modelu zasad aplikacji:ScopeId_GUID/RequiredApplication_GUID i CIversion:10
Zainstaluj aplikację , a następnie dekompresuje zasady. Następujące wpisy są rejestrowane w SMSTS.log:
01-13-2016 17:56:35.666 InstallApplication 1608 (0x648) Znaleziono nazwę modelu zasad aplikacji:ScopeId_GUID/RequiredApplication_GUID i CIversion:10
01-13-2016 17:56:35.682 InstallApplication 1608 (0x648) ::D ecompressBuffer(65536)
01-13-2016 17:56:35.682 InstallApplication 1608 (0x648) Dekompresja (zlib) powiodła się: oryginalny rozmiar 145382, nieskompresowany rozmiar 1238794.Zasady są przechowywane w usłudze WMI przez składnik Zainstaluj aplikację
root\ccm\policy\actualconfig
w przestrzeni nazw. Następujące wpisy są rejestrowane w SMSTS.log:01-13-2016 17:56:36.119 InstallApplication 1608 (0x648) Pomyślnie zablokowana konfiguracja rzeczywista
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) Nowe/zmienione wystąpienia zasad ActualConfig: 6
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) [1] Dodano/zaktualizowano ustawienie "ccm_applicationciassignment:assignmentid=dep-meh20009-scopeid_GUID/application_GUID".
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) [2] Dodano/zaktualizowano ustawienie "ccm_civersioninfo:modelname=scopeid_GUID/application_GUID:version=10".
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) [3] Dodano/zaktualizowano ustawienie "ccm_civersioninfo:modelname=scopeid_GUID/deploymenttype_GUID:version=6".
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) [4] Dodano/zaktualizowano ustawienie "ccm_civersioninfo:modelname=scopeid_GUID/requiredapplication_GUID:version=10".
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) [5] Dodano/zaktualizowano ustawienie "ccm_civersioninfo:modelname=windows/all_windows_client_server:version=1".
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) [6] Dodano/zaktualizowano ustawienie "ccm_scheduler_scheduledmessage:scheduledmessageid=dep-meh20009-scopeid_GUID/application_GUID".
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) Pomyślnie odblokowana konfiguracja rzeczywista
01-13-2016 17:56:36.150 InstallApplication 1608 (0x648) Zdarzenie podnoszenia:
wystąpienie CCM_PolicyAgent_SettingsEvaluationComplete
{
ClientID = "GUID:ClientGUID";
DateTime = "20160113225636.150000+000";
PolicyNamespace = "\\\\.\\root\\ccm\\policy\\machine\\actualconfig
";
ProcessID = 1392; ThreadID = 1608;
};Dostawca agenta zasad następnie przetwarza zmianę
actualconfig
w przestrzeni nazw zasad. Następujące wpisy są rejestrowane w PolicyAgentProvider.log:01-13-2016 17:56:36.150 PolicyAgentProvider 2424 (0x978) [000000B205C423A8] Wykryto zmiany ustawień.
01-13-2016 17:56:36.182 PolicyAgentProvider 2424 (0x978) [000000B205C423A8] Proces roboczy w kolejce w celu przetworzenia tych 1 zmian ustawień
01-13-2016 17:56:36.182 PolicyAgentProvider 2420 (0x974) --- Przetwarzanie 1 zmian ustawień.
01-13-2016 17:56:36.182 PolicyAgentProvider 2420 (0x974) --- [1] __InstanceCreationEvent zmiany ustawień obiektu CCM_ApplicationCIAssignment.AssignmentID="DEP-MEH20009-ScopeId_GUID/Application_GUID".
01-13-2016 17:56:36.182 PolicyAgentProvider 2420 (0x974) --- Początek wskazujący 1 zmiany ustawień.
01-13-2016 17:56:36.182 PolicyAgentProvider 2420 (0x974) --- Ukończono wskazujące 1 zmiany ustawień.Agent DCMAgent przetwarza zmianę i zaczyna oceniać instalacje aplikacji. W DCMAgent.log jest rejestrowany następujący wpis:
01-13-2016 17:56:36.197 DCMAgent 2608 (0xa30) DCMAgent::P rocessAsignmentChange.
Agent zasad aktualizuje informacje o elemencie konfiguracji w magazynie ciągłej integracji. Następujące wpisy są rejestrowane w CIStore.log:
01-13-2016 17:56:36.260 CIStore 2608 (0xa30) CCIStore::P rocessCITargetEvent — CIScopeId_GUID/Application_GUID:10 będzie przeznaczony dla systemu
01-13-2016 17:56:36.275 CIStore 2608 (0xa30) CCIStore::P rocessCITargetEvent — CI ScopeId_GUID/DeploymentType_GUID:6 będzie przeznaczony dla systemuStan ciągłej integracji aplikacji jest dodawany do pobrania, a następnie stany wszystkich skojarzonych interfejsów CI typu wdrożenia aplikacji są sprawdzane przez
CIStateStore
element . Do pobrania są dodawane wszystkie kamijki oznaczone jako nieznajdowane .W CIStore.log:
01-13-2016 17:56:36.275 CIStore 2608 (0xa30) CCIStoreTargetedCIDownloader::AddCI - CI Modelname:ScopeId_GUID/Application_GUID Wersja:10 została dodana do pobrania
W CIStateStore.log:
01-13-2016 17:56:36.322 CIStateStore 2608 (0xa30) CCIStateTransition::ExtractStateDetails — CI ModelName ScopeId_GUID/DeploymentType_GUID, wersja 6 nie można odnaleźć w sklepie.
W CIStore.log:
01-13-2016 17:56:36.369 CIStore 2608 (0xa30) CCIStoreTargetedCIDownloader::AddCI - CI Modelname:ScopeId_GUID/DeploymentType_GUID Wersja:6 została dodana do pobrania
Teraz agent DCM rozpocznie zadanie oceny zasad aplikacji i rozpocznie uzyskiwanie niezbędnych informacji z bazy danych.
Rozwiązywanie problemów z krokiem 2
Ten krok jest często miejscem, w którym występuje błąd, ale rzadko występuje błąd. Składnik Zainstaluj aplikację jest procesem najwyższego poziomu podczas instalowania aplikacji. Wszelkie błędy z listy składników, które wywołuje, zostaną wycofane. Rzeczywista przyczyna błędu jest najprawdopodobniej w kolejnym kroku. Błąd jest zgłaszany z powrotem do zadania Zainstaluj aplikację , które następnie zwraca błąd z ogólnym kodem błędu. Zazwyczaj jest to przyczyna, dla którego większość zadań instalacji aplikacji zwraca następujący błąd:
Instalacja aplikacji InstallApplication 296 (0x128) nie powiodła się.
Akcja installApplication 296 (0x128) Instalowanie aplikacji nie powiodła się: "NAZWA APLIKACJI TUTAJ". Kod błędu 0x80004005
Oto lista najczęstszych błędów zwracanych do zadania Instalowanie aplikacji :
Typ błędu | Co sprawdzić |
---|---|
SMSTS.log pokazuje jeden z następujących błędów:
|
Błąd wskazuje, że maszyna nie może komunikować się z punktem zarządzania (MP). Sprawdź, czy używasz niestandardowej witryny internetowej dla mp. Jeśli tak, zapoznaj się z tematem How to Create the Custom Website in Internet Information Services (IIS) (Jak utworzyć niestandardową witrynę internetową w usługach Internet Information Services (IIS). Upewnij się, że kopia dokumentu domyślnego (default.htm) została umieszczona w folderze głównym, który hostuje witrynę internetową. Upewnij się również, że przekierowanie HTTP nie jest włączone w domyślnej witrynie internetowej. |
SMSTS.log pokazuje następujący błąd: Ocena zasad InstallApplication 3248 (0xcb0) nie powiodła się, hr=0x80004005 |
Upewnij się, że masz zainstalowane najnowsze aktualizacje programu Configuration Manager. |
SMSTS.log pokazuje następujący błąd: Instalacja aplikacji statycznych nie powiodła się, hr=0x87d00267 |
Upewnij się, że zainstalowano najnowszą wersję programu ConfigMgr 2012 R2 SP1. |
SMSTS.log pokazuje następujący błąd: Odebrano stan wykonania: 24 (Pobieranie aplikacji nie powiodło się) |
Przejrzyj KB3007095 i upewnij się, że jesteś aktualny. Upewnij się, że masz zainstalowane najnowsze aktualizacje programu Configuration Manager. |
SMSTS.log pokazuje następujący błąd: Akcja instalacji aplikacji nie powiodła się: "NAZWA APLIKACJI TUTAJ". Kod błędu 0x80004005" |
Przejrzyj CCMExec.log, aby potwierdzić, że host agenta programu SMS został uruchomiony bez błędu. |
Krok 3. Agent DCM zarządza pozyskiwaniem elementów konfiguracji z bazy danych lokacji
W poprzednim kroku elementy CI zostały oznaczone do pobrania. Agent DCM używa agenta ciągłej integracji do rozpoczęcia uzyskiwania elementów konfiguracji i zawartości danych konfiguracji (pakiet SDM) z bazy danych. Zawarte są następujące informacje:
- Właściwości aplikacji
- Manifest aplikacji
- Właściwości typu wdrożenia
- Manifest typu wdrożenia
- Zasady intencji aplikacji pod kątem zgodności
Pozyskiwanie tych informacji nie dzieje się jednocześnie. Agent DCM używa następujących składników po stronie klienta w różnym czasie, aby wykonać tę pracę:
- Agent ciągłej integracji
- Program do pobierania ciągłej integracji
- CIStore
- Usługa transferu danych
- Menedżer transferu zawartości
Wszystkie te informacje są wymagane z bazy danych za pośrednictwem punktu zarządzania. Żądania i odpowiedzi można monitorować przy użyciu pliku MP_GetSDMPackage.log.
Pełna kolejność MP_GetSDMDocument
wykonywania i pobieranie usługi transferu danych dla każdego zadania instalacji aplikacji:
- WŁAŚCIWOŚCI aplikacji: Wyniki mają podstawowe informacje o ciągłej integracji aplikacji. Tylko nazwa.
- Manifest aplikacji: łączy dokumenty ciągłej integracji platformy zasad za pomocą ciągłej integracji aplikacji.
- Zasady intencji aplikacji: wymagany żądany stan aplikacji.
- Manifest aplikacji ponownie. Zanotuj inny skrót skrótu. Tym razem wyniki zawierają rozszerzone informacje, takie jak przestrzenie nazw usługi WMI dla manifestów ciągłej integracji, odwołania ciągłej integracji dla aplikacji.
- Właściwości aplikacji ponownie. Zanotuj inny skrót skrótu. Tym razem wyniki obejmują właściwości rozszerzone i niestandardowe, wydawcę, datę wydania, ikony itd.
- WŁAŚCIWOŚCI DT aplikacji. Wyniki obejmują opis, szacowany czas instalacji, zachowanie po instalacji itd.
- Manifest DT aplikacji. Wyniki obejmują rozszerzone informacje, przestrzenie nazw usługi WMI dla manifestów ciągłej integracji.
- Zasady aplikacji. Wyniki obejmują moF platformy zasad, które mają zostać skompilowane po stronie klienta z żądanym stanem, właściwościami aplikacji i właściwościami dt aplikacji.
- Zasady dt aplikacji są kompresowane. Nie można dekompresować.
Napiwek
Każdy składnik zaangażowany w ten proces utworzy zadanie z identyfikatorem zadania, którego można użyć do śledzenia postępu. Agent DCM jest zawsze pierwszym w procesie. Podczas rozwiązywania problemów zanotuj identyfikator zadania dla każdego składnika podczas przeglądania dzienników. Następnie postępuj zgodnie z identyfikatorem zadania.
Poniżej znajduje się przykład żądania i pobrania tylko właściwości aplikacji i manifestu (kroki 1 i 2 z powyższych).
Identyfikator zadania agenta DCM. W DCMAgent.log:
01-13-201617:56:36.979 DCMAgent 1568(0x620) CDCMAgentJobMgr::StartJob — Uruchamianie zadania agenta DCM{ID}
Agent DCM tworzy zadanie dla agenta ciągłej integracji. W DCMAgent.log:
01-13-2016 17:56:37.088 DCMAgent 2768 (0xad0) DCMAgentJob({ID}): CDCMAgent::InitiateCIAgentJob — uruchamianie zadania agenta ciągłej integracji {ID} dla komputera docelowego. Aby uzyskać więcej informacji, zapoznaj się z tym identyfikatorem zadania agenta ciągłej integracji w ciagent.log
CIDownloader
tworzy zadanie. W CIDownloader.log:01-13-2016 17:56:37.166 CIDownloader 2728 (0xaa8) CIDownloaderJob({ID}): SetFailureCondition — zadanie zakończy się niepowodzeniem natychmiast po błędzie
Agent DCM śledzi postęp za pośrednictwem własnego zadania. W DCMAgent.log:
01-13-2016 17:56:37.182 DCMAgent 2768 (0xad0) DCMAgentJob({ID}): CDCMAgentJob::HandleEvent(Event=NotifyProgress, CurrentState=Evaluating)
CIDownloader
oblicza zakres ciągłej integracji, który uruchamia sprawdzanie magazynu ciągłej integracji. W CIDownloader.log:01-13-2016 17:56:37.182 CIDownloader 2728 (0xaa8) [Calculate Scope] — Dodawanie nazwy modelu ci:ScopeId_GUID/RequiredApplication_GUID Wersja:10 do listy głównej nazwy modelu CIs:ScopeId_GUID/RequiredApplication_GUID Wersja:10
W CIStore.log:
01-13-201617:56:37.182 CIStore 2728(0xaa8) CCIStore::GetTargetedCIReference wywołana dla CIScopeId_GUID/RequiredApplication_GUID:10 ukierunkowanej na system
Ciągła integracja jest odpytywane w magazynie stanu ciągłej integracji i nie można jej odnaleźć. W CIStateStore.log:
01-13-201617:56:37.197 CIStateStore 2728(0xaa8) CCIStateTransition::ExtractStateDetails - CIModelNameScopeId_GUID/RequiredApplication_GUID,wersja 10 nie znaleziono w sklepie.
Ponieważ ciągła integracja nie zostanie znaleziona, zostanie dodana do
CIDownloader
zadania. W CIDownloader.log:01-13-201617:56:37.213 CIDownloader 2728(0xaa8) CIDownloaderJob({ID}): ciągła integracja z ModelNameScopeId_GUID/RequiredApplication_GUID,wersja 10. Model:(null) dodany do zadania.
Agent ciągłej
CIDownloader
integracji uruchamia teraz zadanie pobierania identyfikatorów CI. W CIAgent.log:01-13-201617:56:37.229 CIAgent 2728(0xaa8) CIAgentJob({ID}):Rozpoczęto CIDownloadJob({ID})
Zadanie
CIDownloader
przechodzi do fazy Pobieranie pakietów i dodaje pliki źródłowe dla identyfikatorów CI do żądania. W tym momencie pakiety odwołują się do pakietu SDM, a nie zawartości (plików binarnych). W CIDownloader.log:01-13-201617:56:37.229 CIDownloader 2728(0xaa8) CIDownloaderJob({ID}): DownloadPackages
01-13-201617:56:37.229 CIDownloader 2728(0xaa8) --Source file:.sms_dcm?Id& DocumentId=ScopeId_GUID/RequiredApplication_GUID/10/MANIFEST& Hash=HashString & Compression=zlib
01-13-201617:56:37.229 CIDownloader 2728(0xaa8) --Source file:.sms_dcm?Id& DocumentId=ScopeId_GUID/RequiredApplication_GUID/10/PROPERTIES& Hash=HashString & Compression=zlibCIDownloader
wywołuje usługę transferu danych, aby zażądać manifestu i właściwości aplikacji oraz typu wdrożenia aplikacji. W DataTransferService.log:01-13-201617:56:37.275 DataTransferService 2728(0xaa8) Added(source=.sms_dcm?Id&DocumentId=ScopeId_GUID/RequiredApplication_GUID/10/PROPERTIES&Hash=HashString&Compression=zlib,dest={JobID}_2.zip)pair from manifest.
01-13-201617:56:37.275 DataTransferService 2728(0xaa8) Dodano(source=.sms_dcm?Id&DocumentId=ScopeId_GUID/RequiredApplication_GUID/10/MANIFEST&Hash=HashString&Compression=zlib,dest={JobID}_1.zip)pair from manifest.Usługa transferu danych wywołuje interfejs
MP_GetSDMPacakge
ISAPI w punkcie zarządzania, który z kolei żąda informacji o pakiecie SDM z bazy danych przez wyzwolenie procedury składowanej SQL. W programie SQL Server Profiler:exec MP_GetSdmDocument N'ScopeId_GUID/RequiredApplication_GUID/10/PROPERTIES',N'HashString',N'1',N'1'
exec MP_GetSdmDocument N'ScopeId_GUID/RequiredApplication_GUID/10/MANIFEST',N'HashString',N'1',N'1'Usługa transferu danych uruchamia zadanie usługi analizy w tle (BITS) i dodaje ścieżkę do zadania po odebraniu odpowiedzi. I zaczyna pobierać dane. W DataTransferService.log:
01-13-201617:56:37.432 DataTransferService 2316(0x90c) Uruchamianie zadania USŁUGI BITS"{ID}" dla zadania DTS"{ID}" w obszarze użytkownika "SID".
01-13-201617:56:37.479 DataTransferService 2316(0x90c) BITSHelper: Pełna ścieżka źródłowa do przeniesienia =http://PS1.contoso.com:80/SMS_MP/.sms_dcm?Id&DocumentId=ScopeId_GUID/RequiredApplication_GUID/10/PROPERTIES&Hash=HashString&Compression=zlib
01-13-201617:56:37.479 DataTransferService 2316(0x90c) Dodawanie do zadania usługi BITS:{ID}_2.zip
01-13-201617:56:37.479 DataTransferService 2316(0x90c) BITSHelper: Pełna ścieżka źródłowa do przeniesienia=http://PS1.contoso.com:80/SMS_MP/.sms_dcm?Id&DocumentId=ScopeId_GUID/RequiredApplication_GUID/10/MANIFEST&Hash=HashString&Compression=zlib
01-13-201617:56:37.479 DataTransferService 2316 (0x90c) Dodawanie do zadania usługi BITS: {ID}_1.zipMonitoruj DataTransferService.log na potrzeby ukończenia pobierania pakietu SDM. Wyszukaj wiersze podobne do poniższych:
Element konfiguracji nr 1
01-13-2016 17:56:37.588 DataTransferService 2748 (0xabc) Zadanie: {ID}, łączna liczba plików: 2, Transferowane pliki: 2, Łączna liczba bajtów: 1160, Przetransferowane bajty: 1160
01-13-2016 17:56:37.588 DataTransferService 2748 (0xabc) DTSJob {ID} pomyślnie ukończono pobieranie.Element konfiguracji nr 2
01-13-2016 17:56:37.791 DataTransferService 1568 (0x620) Zadanie: {ID}, łączna liczba plików: 3, Transferowane pliki: 3, Łączna liczba bajtów: 2616, Przetransferowane bajty: 2616
01-13-2016 17:56:37.791 DataTransferService 1568 (0x620) DTSJob {ID} pomyślnie ukończono pobieranie.Element konfiguracji nr 3
01-13-2016 17:56:37.994 DataTransferService 2748 (0xabc) Zadanie: {ID}, łączna liczba plików: 3, Transferowane pliki: 3, Łączna liczba bajtów: 3216, Przetransferowane bajty: 3216
01-13-2016 17:56:37.994 DataTransferService 2748 (0xabc) DTSJob {ID} pomyślnie ukończono pobieranie.Element konfiguracji nr 4
01-13-2016 17:56:38.104 DataTransferService 1568 (0x620) Zadanie: {ID}, łączna liczba plików: 1, Transferowane pliki: 1, Łączna liczba bajtów: 4172, Przetransferowane bajty: 4172
01-13-2016 17:56:38.104 DataTransferService 1568 (0x620) DTSJob {ID} pomyślnie ukończono pobieranie.
Rozwiązywanie problemów z krokiem 3
W kroku 3 do kroku 6 wiele składników współdziała ze sobą. Zadania są tworzone lokalnie, aby ocenić istnienie wystąpień CI za pośrednictwem magazynu ciągłej integracji (CCMStore.sdf). Lub interfejsy CI są oznaczone jako nie znaleziono. W następnej fazie tego kroku może wystąpić wiele problemów:
Usługa DataTransferService używa usługi BITS i komunikacji HTTP z dostawcą usług w celu zażądania identyfikatorów CI i pobrania ich.
Ta sytuacja może mieć następujące przyczyny:
- Nieprawidłowe dane w bazie danych. Na przykład zwraca uszkodzone dane ciągłej integracji lub pakietu SDM, nieaktualne wersje itd.
- Problemy z usługą WMI podczas uzyskiwania dostępu do przestrzeni nazw zasad lokalnie na maszynie, która wykonuje sekwencję zadań.
- Błąd podczas komunikacji z programem MP lub bazą danych.
- Błędy zadań usługi BITS.
- Błędy związane z siecią, pliki do pobrania itd.
- Problemy z usługami IIS związane z SMS_MP vDir (folder SMS_CCM\SMS_MP).
- Błędy oceny po zainstalowaniu.
Sprawdź następujące pliki dziennika, aby ustalić, gdzie ten proces kończy się niepowodzeniem:
- CIDownloader.log
- DCMAgent.log
- CIStore.log
- CIStateStore.log
- DataTransferService.log
Krok 4. Agent ciągłej integracji przetwarza elementy CI i zapisuje je lokalnie w pliku CCMStore.sdf
Po zakończeniu zadania usługi transferu danych pobieranie wszystkich identyfikatorów CI, do których odwołuje się instalacja aplikacji, CIDownloader
sprawdzi skrót identyfikatorów CI, zdekompresuje je, a następnie utrwali je w magazynie ciągłej integracji. Ten proces jest wykonywany dla każdego z interfejsów CI skojarzonych z aplikacją.
W przypadku każdej ciągłej integracji, która ma relację z aplikacją instalowaną w tym zadaniu, wystąpi następujący proces. Scalanie dzienników pomoże śledzić postęp każdego z nich. Postępuj zgodnie z identyfikatorami zadań.
Pojedynczo po całkowitym pobraniu każdej ciągłej integracji usługa transferu danych oznacza ukończenie zadania i
CIDownloader
potwierdza skrót.W DataTransferService.log:
01-13-2016 17:56:37.588 DataTransferService 2748 (0xabc) Zadanie: {ID}, łączna liczba plików: 2, Transferowane pliki: 2, Łączna liczba bajtów: 1160, Przetransferowane bajty: 1160
01-13-2016 17:56:37.588 DataTransferService 2748 (0xabc) DTSJob {ID} pomyślnie ukończono pobieranie.
01-13-2016 17:56:37.604 DataTransferService 2316 (0x90c) DTSJob {ID} w stanie "NotifiedComplete".W CIDownloader.log:
01-13-2016 17:56:37.619 CIDownloader 2768 (0xad0) ::D ecompressFile(C:\WINDOWS\CCM\CIDownloader\Staging}_1.zip,65536,C:\WINDOWS\CCM\CIDownloader\Staging{JobID}_1.xml)
01-13-2016 17:56:37.619 CIDownloader 2768 (0xad0) VerifyCIDocumentHash — przygotowanie do zweryfikowania skrótu dokumentu ciągłej integracji ScopeId_GUID/RequiredApplication_GUID/10/MANIFEST
01-13-2016 17:56:37.619 CIDownloader 2768 (0xad0) ::D ecompressFile(C:\WINDOWS\CCM\CIDownloader\Staging{JobID}_2.zip,65536,C:\WINDOWS\CCM\CIDownloader\Staging{JobID}_2.xml)
01-13-2016 17:56:37.619 CIDownloader 2768 (0xad0) VerifyCIDocumentHash — przygotowanie do zweryfikowania skrótu dokumentu ci ScopeId_GUID/RequiredApplication_GUID/10/PROPERTIESPo
CIDownloader
uzyskaniu wszystkich identyfikatorów CI z punktu zarządzania wywoła go z powrotem do agenta ciągłej integracji i rozpocznie utrwalanie identyfikatorów CI. W CIAgent.log:01-13-2016 17:56:38.119 CIAgent 2768 (0xad0) CIAgentJob({ID}): CAgentJob::NotifyComplete - CIDownloader callback
01-13-2016 17:56:38.119 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=PersistingCIModels)
01-13-2016 17:56:38.119 CIAgent 2728 (0xaa8) CIAgentJob({ID}): PersistCIModelsCIDownloader
będzie utrwalać identyfikatory CI w magazynie szyfrów ciągłej integracji. W CIDownloader.log:01-13-2016 17:56:38.119 CIDownloader 2728 (0xaa8) CCIDigestStore::P ersistIntegratedCIDefinitions
01-13-2016 17:56:38.182 CIDownloader 2728 (0xaa8) DCM::LanternUtils::StoreModelDocument
01-13-2016 17:56:38.385 CIDownloader 2728 (0xaa8) DCM::LanternUtils::StoreModelDocument powiodło się
01-13-2016 17:56:38.385 CIDownloader 2728 (0xaa8) CCIDigestStore::P ersistIntegratedCIDefinitions — dokument modelu Lantern skompilowany do usługi WMI.
01-13-2016 17:56:38.463 CIDownloader 2728 (0xaa8) CCIDigestStore::P ersistIntegratedCIDefinitions — Tworzenie pliku C:\WINDOWS\CCM\CIDownloader\DigestStore\321EC9594015C9F9E6780EB4FEC210A78BEC119CB44ADE46A94C5F5B26F47948.xml
01-13-2016 17:56:38.463 CIDownloader 2728 (0xaa8) CCIDigestStore::P ersistIntegratedCIDefinitions — Tworzenie pliku C:\WINDOWS\CCM\CIDownloader\DigestStore\B7BE90F13A8B7B3BD870B8DC5D0DF3E8378137B385988C2037A5C94EF21E4BCB.xml
01-13-2016 17:56:38.463 CIDownloader 2728 (0xaa8) CCIDigestStore::P ersistIntegratedCIDefinitions — Skrót Dcm utrwalone do CIDigestStore.CIDownloader
kończy utrwalanie identyfikatorów CI i oznacza zakończenie zadania. W CIDownloader.log:01-13-2016 17:56:38.463 CIDownloader 2728 (0xaa8) CCIDigestStore::P ersistIntegratedCIDefinitions — Skrót Dcm utrwalone do CIDigestStore.
01-13-2016 17:56:38.463 CIDownloader 2728 (0xaa8) CCIDownloader::CompleteJob dla zadania {ID}.Agent ciągłej integracji sprawdza magazyn ciągłej integracji dla interfejsów certyfikacji wymaganych przez proces instalacji aplikacji. Magazyn ciągłej integracji zwraca odpowiednie wartości. W CIAgent.log:
01-13-2016 17:56:38.479 CIAgent 2728 (0xaa8) CCIInfo::AddDepedentCI for ModelName: ScopeId_GUID/Application_GUID Wersja: 10
01-13-2016 17:56:38.479 CIStore 2728 (0xaa8) CCIStore::GetCIEx — Zażądano nazwy modelu CI ModelName ScopeId_GUID/Application_GUID, wersja 10 zwrócona z [Store]
01-13-2016 17:56:38.479 CIStore 2728 (0xaa8) Znaleziono właściwość (DisplayName), ale tylko z rezerwą do języka angielskiego USA: ConfigMgr 2012 Toolkit R2
01-13-2016 17:56:38.510 CIAgent 2728 (0xaa8) CCIInfo::AddDepedentCI for ModelName: ScopeId_GUID/DeploymentType_GUID Wersja: 6
01-13-2016 17:56:38.510 CIStore 2728 (0xaa8) CCIStore::GetCIEx — zażądano nazwy modelu CI ModelName ScopeId_GUID/DeploymentType_GUID, wersja 6 zwrócona z [Store]
01-13-2016 17:56:38.510 CIStore 2728 (0xaa8) Znaleziono właściwość (DisplayName), ale tylko z rezerwą domyślną: ConfigMgr 2012 Toolkit R2 — Instalator Windows (*.msi plik)
Następnie agent ciągłej integracji przeprowadzi dalsze przetwarzanie, wywołując model SDM. Pakiety SDM łączą ze sobą interfejsy CI i zawierają dodatkowe informacje na temat konfiguracji, która zostanie zaimplementowana. Część tego procesu wiąże również urzędy certyfikacji z zasadami przy użyciu platformy Microsoft Policy Platform.
Rozwiązywanie problemów z krokiem 4
Aby rozwiązać problemy w tym kroku, zobacz Rozwiązywanie problemów z krokiem 3.
Krok 5. Agent ciągłej integracji wykonuje dalsze przetwarzanie interfejsów CI przy użyciu modelu SDM
W tym momencie zostały uzyskane niezbędne elementy CI, a dane pakietu SDM zostały pobrane. Agent ciągłej integracji wykona następujące procesy:
- wywołaj metodę
SDMMethod
, aby powiązać identyfikatory CI z zasadami/ lantern zasad przechowywanymi w usłudze WMI znajdującymi się wroot\Microsoft\PolicyPlatform\Documents\Local
lokalizacji . - ocenianie ich stosowania
- ostatecznie oznacz je jako dostępne dla wymuszania przed oczyszczeniem swoich zadań
W CIAgent.log:
01-13-2016 17:56:38.510 CIAgent 2728 (0xaa8) CIAgentJob({ID}): TransitionState(From=PersistingCIModels, To=InvokingSdmMethod) for Event=Transition
Agent ciągłej integracji rozpoczyna uchwalenie i ocenę dla interfejsów CI aplikacji. W CIAgent.log:
01-13-2016 17:56:38.541 CIAgent 2316 (0x90c) CIAgentJob({ID}): StartEnactment — CI — ScopeId_GUID/RequiredApplication_GUID
01-13-2016 17:56:38.541 CIAgent 2316 (0x90c) CIAgentJob({ID}): wymagana jest ocena ciągłej integracji "ScopeId_GUID/RequiredApplication_GUID.10".Agent ciągłej integracji wywołuje klienta platformy zasad i wiąże zasady, wywołując platformę zasad firmy Microsoft. W CIAgent.log:
01-13-2016 17:56:38.541 CIAgent 2316 (0x90c) CIAgentJob({ID}): wymagana jest ocena ciągłej integracji "ScopeId_GUID/RequiredApplication_GUID.10".
01-13-2016 17:56:38.541 CIAgent 2316 (0x90c) CIAgentJob({ID}): StartEnactment — próba wywołania klienta platformy zasad
01-13-2016 17:56:38.885 CIAgent 2316 (0x90c) DCM::LanternUtils::ScopeAndBindPolicies - [ScopedPolicies] ScopeId_GUID_Application_GUID_Platform_PolicyDocument
01-13-2016 17:56:38.885 CIAgent 2316 (0x90c) DCM::LanternUtils::ScopeAndBindPolicies - [ScopedPolicies] ScopeId_GUID_Application_GUID_Configuration_PolicyDocumentAgent ciągłej integracji kończy uchwalenie. W CIAgent.log:
01-13-2016 17:56:38.885 CIAgent 2316 (0x90c) DCM::LanternUtils::ScopeAndBindPolicies - [ScopedPolicies] ScopeId_GUID_DeploymentType_GUID_Discovery_PolicyDocument
01-13-2016 17:56:39.619 CIAgent 2768 (0xad0) CIAgentJob({ID}): Wywołanie powiodło się dla identyfikatora zadania platformy zasad
01-13-2016 17:56:39.619 CIAgent 2316 (0x90c) Zadanie lantern:ID powiodło się.
01-13-2016 17:56:39.619 CIAgent 2768 (0xad0) CIAgentJob({ID}): ReportMethodInvocation:: Uchwalenie powiodło sięAgent ciągłej integracji przechodzi teraz zadanie do pobierania identyfikatorów CI, a następnie natychmiast przechodzi jego stan ponownie, tym razem w celu wymuszania wystąpień CI. W CIAgent.log:
01-13-2016 17:56:39.963 CIAgent 2768 (0xad0) CIAgentJob({ID}): TransitionState(From=StateDownloadingContents, To=StateEnforcingCIs) for Event=Transition
01-13-2016 17:56:39.963 CIAgent 2768 (0xad0) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=CITaskComplete, CurrentState=StateEnforcingCIs)Agent ciągłej integracji sprawdzi jeszcze raz, aby upewnić się, że aplikacja nie jest jeszcze zainstalowana. Agent DCM oznacza ciągłą integrację jako dostępną dla wymuszania, a następnie zgłasza ten stan.
W CIAgent.log:
01-13-2016 17:56:39.963 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=StateEnforcingCIs)
W DCMAgent.log:
01-13-2016 17:56:39.979 DCMAgent 1844 (0x734) CAppMgmtSDK::GetEvaluationState ScopeId_GUID/RequiredApplication_GUID.10 = AvailableForEnforcement
W CIAgent.log:
01-13-2016 17:56:40.057 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=StateEnforcementReporting)
Elementy CI zostały ocenione, pobrane, zdekompresowane, utrwalone, a następnie ponownie ocenione. Agent ciągłej integracji i agent DCM czyści utworzone zadania, aby wykonać wszystkie te zadania.
W CIAgent.log:
01-13-2016 17:56:40.072 CIAgent 2356 (0x934) Wewnętrzne żądanie usunięcia zadania CIAgent {ID}
W DCMAgent.log:
01-13-2016 17:56:40.088 DCMAgent 2728 (0xaa8) DCMAgentJob({ID}): CDCMAgentJob::HandleEvent(Event=Transition, CurrentState=Success)
W CIAgent.log:
01-13-2016 17:56:40.104 CIAgent 2356 (0x934) CIAgentJob({ID}): Ukończenie zadania. Zamykanie pompy zdarzeń.
W DCMAgent.log:
01-13-2016 17:56:40.104 DCMAgent 2728 (0xaa8) CDCMAgentJobMgr::D eleteJob — żądanie usunięcia zadania agenta DCM {ID}
01-13-2016 17:56:40.135 DCMAgent 2728 (0xaa8) DCMAgentJob({ID}): QueueDebug — Zdarzenie wykonywania.
01-13-2016 17:56:40.104 DCMAgent 2728 (0xaa8) Ukończono zadanie. Zamykanie pompy zdarzeń.
Rozwiązywanie problemów z krokiem 5
Aby rozwiązać problemy w tym kroku, zobacz Rozwiązywanie problemów z krokiem 3.
Krok 6. Agent DCM potwierdza, że wszystkie urzędy certyfikacji są obecne i flaguje zawartość do pobrania
Instalacja aplikacji spowoduje teraz wywołanie z powrotem do zestawu SDK, aby zainstalować aplikację. Tworzy nowe zadanie dla agenta DCM, które z kolei tworzy zadanie dla agenta ciągłej integracji i wszystkich używanych składników. Ten sam proces wystąpi, w którym agent ciągłej integracji używa składników, aby upewnić się, że wszystkie elementy CI zostały pobrane, ocenione i utrwalone. Wynikiem tego kroku jest to, że zawartość (pliki binarne) dla procesu instalacji aplikacji zostanie oznaczona do pobrania.
Instalacja aplikacji wywołuje zestaw SDK zarządzania aplikacjami (DCM Agent) w celu zainstalowania aplikacji. W InstallApplication.log:
01-13-2016 17:56:40.119 InstallApplication 1608 (0x648) Wywoływanie zestawu SDK zarządzania aplikacjami w celu zainstalowania aplikacji
01-13-2016 17:56:40.135 InstallApplication 1608 (0x648) Rozpoczęto instalowanie aplikacji "ScopeId_GUID/RequiredApplication_GUID". Aby uzyskać szczegółowe informacje na temat tego zadania, zapoznaj się z DCMAgent.log. JobID='{ID}'Agent DCM tworzy nowe zadanie dla agenta ciągłej integracji.
W DCMAgent.log:
01-13-2016 17:56:40.135 DCMAgent 2356 (0x934) DCMAgentJob({ID}): CDCMAgent::InitiateCIAgentJob — uruchamianie zadania agenta ciągłej integracji {ID} dla komputera docelowego. Aby uzyskać więcej informacji, zapoznaj się z tym identyfikatorem zadania agenta ciągłej integracji w ciagent.log
W CIAgent.log:
01-13-2016 17:56:40.135 CIAgent 2356 (0x934) CIAgentJob({ID}): [LeakTest] AgentJob created
To nowe zadanie agenta ciągłej integracji przechodzi od razu do stanu Oczekiwanie na przypisaną liczbę CIs . Następnie następuje natychmiastowe przejście do pobierania interfejsów CI.
W CIAgent.log:
01-13-2016 17:56:40.135 CIAgent 2768 (0xad0) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=WaitingForAssignedCI)
01-13-2016 17:56:40.135 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=DownloadCIs, CurrentState=WaitingForAssignedCI)
01-13-2016 17:56:40.135 CIAgent 2768 (0xad0) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=DownloadingCIs)CIDownloader
Tworzy zadanie do obsługi pobierania i sprawdza, czy są obecne urzędy certyfikacji. W CIDownloader.log:01-13-2016 17:56:40.135 CIDownloader 2768 (0xad0) CIDownloaderJob({ID}): SetFailureCondition — zadanie zakończy się niepowodzeniem natychmiast po błędzie
CIDownloader
raportuje agentowi ciągłej integracji, że wszystkie identyfikatory CI dla aplikacji znajdują się w sklepie. W CIDownloader.log:01-13-2016 17:56:40.166 CIDownloader 2768 (0xad0) CDownloadPayloadInfo::AddCI - CI with ModelName ScopeId_GUID/Application_GUID, wersja 10 jest już dostępna.
Ciągła integracja dla aplikacji, jednostek DT aplikacji i wymagań została już pobrana. Dzienniki agenta ciągłej integracji, które nie mają być pobierane. Następnie przechodzi do utrwalania modeli ciągłej integracji.
W CIAgent.log:
01-13-2016 17:56:40.182 CIAgent 2768 (0xad0) CIAgentJob({ID}): Nic do pobrania.
01-13-2016 17:56:40.182 CIAgent 2316 (0x90c) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=PersistingCIModels)Agent ciągłej integracji ponownie wywołuje metodę SDM. Tylko tym razem będzie oznaczać, że pliki binarne (install.msi) nie zostały pobrane. W CIAgent.log:
01-13-2016 17:56:40.213 CIAgent 2316 (0x90c) CIAgentJob({ID}): CI ScopeId_GUID/DeploymentType_GUID Zestaw narzędzi ConfigMgr 2012 Toolkit R2 — Instalator Windows (*plik .msi)) przeznaczony dla elementu docelowego (zależna od ScopeId_GUID zasad/RequiredApplication_GUID:10) jest w zakresie oceny.
01-13-2016 17:56:40.213 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=InvokingSdmMethod)Agent ciągłej integracji ponownie rozpoczyna uchwalenie, wywołuje platformę zasad firmy Microsoft i potwierdza, że elementy CI są powiązane z zasadami.
W CIAgent.log:
01-13-2016 17:56:40.244 CIAgent 2728 (0xaa8) CIAgentJob({ID}): StartEnactment — CI - ScopeId_GUID/RequiredApplication_GUID
01-13-2016 17:56:40.244 CIAgent 2728 (0xaa8) CIAgentJob({ID}): StartEnactment — próba wywołania klienta platformy zasad
01-13-2016 17:56:40.322 CIAgent 2768 (0xad0) CIAgentJob({ID}): ReportMethodInvocation :: Uchwalenie powiodło się
01-13-2016 17:56:40.322 CIAgent 2768 (0xad0) CIAgentJob({ID}): ReportMethodInvocation :: Uzyskane raporty latarniW tym momencie agent ciągłej integracji oznacza zarówno aplikację, jak i jednostki DT aplikacji jako dostępne i odpowiednie, a także że zostaną zainstalowane.
W CIAgent.log:
01-13-2016 17:56:40.369 CIAgent 2768 (0xad0) CIAgentJob({ID}):State - Reporting (scan):: AppModel — ScopeId_GUID/Application_GUID:10 — State = NotInstalled ResolvedState = Available Applicability = Applicable ConfigureState = NotNeededed
01-13-2016 17:56:40.385 CIAgent 2768 (0xad0) CIAgentJob({ID}):Stan — raportowanie (skanowanie):: Typ wdrożenia — ScopeId_GUID/DeploymentType_GUID:6 — Stan = NotInstalled ResolvedState = Available Applicability = Applicable ConfigureState = NotNeededed
01-13-2016 17:56:40.463 CIAgent 2728 (0xaa8) Job({ID}): CI ModelName ScopeId_GUID/Application_GUID w wersji 10 zostanie ZAINSTALOWANY. : Task(ScopeId_GUID/RequiredApplication_GUID.10.ContentDownload)
01-13-2016 17:56:40.463 CIAgent 2728 (0xaa8) Job({ID}): CI ModelName ScopeId_GUID/DeploymentType_GUID w wersji 6 zostanie ZAINSTALOWANY. : Task(ScopeId_GUID/Application_GUID.10.ContentDownload)Teraz agent ciągłej integracji rozpocznie pobieranie plików binarnych dla instalacji aplikacji. W CIAgent.log:
01-13-2016 17:56:40.417 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=StateDownloadingContents)
01-13-2016 17:56:40.417 CIAgent 2728 (0xaa8) CIAgentJob({ID}): DownloadBinaryContents
01-13-2016 17:56:40.417 CIAgent 2728 (0xaa8) {ID} — inicjowanie zadań ContentDownload.
01-13-2016 17:56:40.463 CIAgent 2728 (0xaa8) Job({ID}) : Successfully initialized: Task(ScopeId_GUID/DeploymentType_GUID.6.ContentDownload)
01-13-2016 17:56:40.463 CIAgent 2728 (0xaa8) Job({ID}) : Successfully initialized: Task(ScopeId_GUID/Application_GUID.10.ContentDownload)
Skomplikowana część się skończyła. Teraz przejdziemy do pobrania plików binarnych.
Rozwiązywanie problemów z krokiem 6
Aby rozwiązać problemy w tym kroku, zobacz Rozwiązywanie problemów z krokiem 3.
Krok 7. Pobieranie zawartości zadania instalacji aplikacji przy użyciu standardowego procesu żądania/odpowiedzi zawartości
Aby pobrać zawartość instalacji, używane są standardowe procesy żądań zawartości. Składniki zaangażowane po stronie klienta to:
- Usługi lokalizacyjne
- Dostęp do zawartości (CAS)
- Menedżer transferu zawartości
- Menedżer transferu danych
Po stronie serwera składniki obejmują:
- MP_Location
- MP_GetDPInfoContent
- Usługi IIS w punkcie dystrybucji (DP), z którego będzie uzyskiwany dostęp do zawartości.
Dostęp do zawartości (CAS) będzie uzyskiwać dostęp do informacji o żądaniu zawartości z usługi WMI. W CAS.log:
01-13-2016 17:56:40.572 ContentAccess 2728 (0xaa8) CContentAccessService::Initialize
01-13-2016 17:56:40.572 ContentAccess 2728 (0xaa8) CDownloadManager::InitializeFromWmi
01-13-2016 17:56:40.572 ContentAccess 2728 (0xaa8) ===== CacheManager: inicjowanie stanu pamięci podręcznej z usługi Wmi. =====
01-13-2016 17:56:40.588 ContentAccess 2728 (0xaa8) Ładowanie konfiguracji pamięci podręcznej z usługi Wmi.
01-13-2016 17:56:42.166 ContentAccess 2728 (0xaa8) CacheManager: Pobieranie informacji o zawartości buforowanej dla Content_GUID.1.Menedżer transferu zawartości tworzy i wysyła żądanie lokalizacji zawartości. W ContentTransferManager.log:
01-13-2016 17:56:42.432 ContentTransferManager 2768 (0xad0) Próba utworzenia żądania lokalizacji dla packageID='PackageID' i Version='1'
01-13-2016 17:56:42.448 ContentTransferManager 2768 (0xad0) Próba wysłania żądania lokalizacji dla packageID='Content_GUID'
01-13-2016 17:56:42.448 ContentTransferManager 2728 (0xaa8) Utworzono zadanie CTM {ID} dla identyfikatora SID użytkownika
01-13-2016 17:56:42.448 ContentTransferManager 2768 (0xad0) ContentLocationRequest: <ContentLocationRequest SchemaVersion="1.00" ExcludeFileList="><Package ID="UID:Content_GUID" Version="1"/><AssignedSite SiteCode="MEH"/><ClientLocationInfo LocationType="SMSUpdate" DistributeOnDemand="0" UseAzure="0" AllowWUMU="0" UseProtected="0" AllowCaching="0" BranchDPFlags="0" UseInternetDP="0" AllowHTTP="1" AllowSMB="0" AllowMulticast="0"><ADSite Name=" Default-First-Site-Name"/><Forest Name="contoso.com"/><Domain Name="contoso.com"/><IPAddresses><IPAddress SubnetAddress="10.10.25.128" Address="10.10.10.10.25.130"/><IPAddress SubnetAddress="10.10.25.128" Address="10.10.25.166"//><IPAddresses></ClientLocationRequest><>
01-13-2016 17:56:42.463 ContentTransferManager 2768 (0xad0) Utworzone i wysłane żądanie lokalizacji "{ID}" dla Content_GUID pakietu
01-13-2016 17:56:42.463 ContentTransferManager 2768 (0xad0) Zadanie CTM {ID} wprowadzono CCM_DOWNLOADSTATUS_DOWNLOADING_DATA fazyMP_Location odbiera żądanie i przetwarza je, wykonując procedurę składowaną w bazie danych.
MP_GetDPInfoProtected
lubMP_GetDPInfoUnprotected
.Napiwek
MP_GetContentDPInfoProtected
jest wywoływany, gdy klient należy do grupy granic, która ma chronioną usługę DP. Chronione adresy IP to te, które nie zezwalają na powrót.MP_GetContentDPInfoUnprotected
jest wywoływana, gdy klient nie należy do grupy granic, która ma chronioną usługę DP.W MP_Location.log:
01-13-2016 17:56:42.516 MP_LocationManager 4044 (0xfcc) MP_GetContentDPInfoProtected (UID:Content_GUID,1,MEH,ServerNameList ServerName PS1DP.CONTOSO.COM/ServerName/ServerNameList,SMSUpdate,000000000,contoso.com,contoso.com<>><>< ClientLocationInfo LocationType="SMSUpdate" DistributeOnDemand="0" UseAzure="0" AllowWUMU="0" UseProtected="0" AllowCaching="0" BranchDPFlags="0" UseInternetDP="0" AllowHTTP="1" AllowSMB="0" AllowMulticast="0"><<><ADSite Name="DEFAULT-FIRST-SITE-NAME"/><Forest Name="contoso.com"/><Domain Name="contoso.com"/><IPAddresses IPAddresses><SubnetAddress="10.10.25.128" Address="10.10.110.25.130"/><IPAddress SubnetAddress="10.10.25.128" Address="10.10.25.166"//><IPAddresses></ClientLocationInfo>)
MP_Location wysyła odpowiedź zawierającą listę dostępnych punktów dystrybucji, w których można pobrać pliki binarne. W MP_Location.log:
01-13-2016 17:56:42.523 MP_LocationManager 4044 (0xfcc) MP LM: Treść komunikatu odpowiedzi: <ContentLocationReply SchemaVersion="1.00" ContentFlags="200960" HashAlgorithm="32780" AlgorithmPreference="4" Hash="HashString" ExcludeFileListHash="" RelatedContentID=""><ContentInfo PackageFlags="32"><ContentHashValues Hash Algorithm="32780" HashString="HashString" HashPreference="4"//><ContentHashValues><></ContentInfo><Sites Site><><MPSite SiteCode="MEH" MasterSiteCode="MEH" SiteLocality="LOCAL" IISPreferedPort="80" IISSSLPreferedPort="443"/><LocationRecords><LocationRecord><Url Name="
http://PS1DP.contoso.com/SMS_DP_SMSPKG$/Content_GUID.1
" Signature="http://PS1DP.contoso.com/SMS_DP_SMSSIG$/Content_63fbf078-1815-4e37-9614-b60ce7947805.1.tar
/><ADSite Name="Default-First-Site-Name "/><IPSubnets><IPSubnet Address="10.10.25.128"/><IPSubnet Address=""/><IPSubnets><Metric Value=""/><Version>8239</Version><Capabilities SchemaVersion="1.0"><Property Name="SSLState" Value="0"//><Capabilities><ServerRemoteName PS1DP.contoso.com</ServerRemoteName><>DPType SERVER</DPType>><Windows Trust="1"/><Locality>LOCAL</LocationRecord></LocationRecords/LocationRecords></Site><><MPSite SiteCode="MEH" MasterSiteCode="MEH" SiteLocality="LOCAL"/><LocationRecords/></><><Site RelatedContentIDs><><//ContentLocationReply>Odpowiedź jest odbierana przez usługi lokalizacji na kliencie. W LocationServices.log:
01-13-2016 17:56:42.510 LocationServices 2752 (0xac0) ContentLocationReply: <ContentLocationReply SchemaVersion="1.00" ContentFlags=" 200960" HashAlgorithm="32780" AlgorithmPreference="4" Hash="6FB054E0532351D888291FF52F74E0085940AEA90EC85A5B999B6CFBE94663FC" ExcludeFileListHash="" RelatedContentID=""><ContentInfo PackageFlags="32"><ContentHashValues><Hash Algorithm="32780" HashString="6FB054E0532351D888291FF52F74E0085940AEA9EC85A5B999B6CFBE94663FC" HashPreference="4"//ContentHashValues></ContentInfo><Sites><><MPSite SiteCode="MEH" MasterSiteCode="MEH" SiteLocality="LOCAL" IISPreferedPort="80" IISSSLPreferedPort="443"/><LocationRecords><LocationRecords><Nazwa adresu URL="
http://PS1DP.contoso.com/SMS_DP_SMSPKG$/Content_63fbf078-1815-4e37-9614-b60ce7947805.1
" Signature="http://PS1DP.contoso.com/SMS_DP_SMSSIG$/Content_63fbf078-1815-4e37-9614-b60ce7947805.1.tar
/><ADSite Name="Default-First-Site-Name"/><IPSubnets IPSubnet Address="10.10.25.128"/><IPSubnet Address=""/></IPSubnets><><Metric Value=""/><Version>8239><</Wersja><Capabilities SchemaVersion="1.0"><Property Name="SSLState" Value="0"//><Capabilities><ServerRemoteName>PS1DP.contoso.com</ServerRemoteName><DPType>SERVER</DPType><Windows Trust="1"//><Locality LOCAL</Locality>></LocationRecord/LocationRecords></Site><><MPSite SiteCode="MEH" MasterSiteCode="MEH" SiteLocality="LOCAL"/><LocationRecords></></Site></Sites><RelatedContentIDs/></ContentLocationReply>Usługi lokalizacji analizuje odpowiedź, aby uzyskać listę punktów dystrybucji, która jest wysyłana do Menedżera transferu zawartości. W LocationServices.log:
01-13-2016 17:56:42.526 LocationServices 2752 (0xac0) Punkt dystrybucji =''
http://PS1DP.contoso.com/SMS_DP_SMSPKG$/Content_GUID.1
, Locality='LOCAL', DPType='SERVER', Version='8239', Capabilities='<Capabilities SchemaVersion="1.0"><Property Name="SSLState" Value="0"//><Capabilities>', Signature=''http://PS1DP.contoso.com/SMS_DP_SMSSIG$/Content_GUID.1.tar
, ForestTrust='TRUE',Menedżer transferu zawartości utrzymuje lokalizację zadania, które zostało utworzone do pobierania plików binarnych. W ContentTransferManager.log:
01-13-2016 17:56:42.526 ContentTransferManager 2752 (0xac0) Utrwalone lokalizacje dla zadania CTM {ID}: (LOCAL)
http://PS1DP.contoso.com/SMS_DP_SMSPKG$/Content_GUID.1
Następnie Menedżer transferu zawartości tworzy zadanie dla usługi transferu danych w celu pobrania plików binarnych. W ContentTransferManager.log:
01-13-2016 17:56:42.541 ContentTransferManager 2752 (0xac0) zadanie CTM {ID} (odpowiadające zadanie DTS {ID}) rozpoczęto pobieranie z folderu "
http://PS1DP.contoso.com/SMS_DP_SMSPKG$/Content_GUID.1
" w celu pobrania pełnej zawartości.Usługa transferu danych kompiluje zadanie przy użyciu adresu URL i uruchamia zadanie usługi BITS do pobrania. W DataTransferService.log:
01-13-2016 17:56:42.541 DataTransferService 2752 (0xac0) Wysyłanie żądania PROPFIND przy użyciu adresu URL
http://PS1DP.contoso.com:80/SMS_DP_SMSPKG$/Content_GUID.1
01-13-2016 17:56:42.557 DataTransferService 2752 (0xac0) UpdateURLWithTransportSettings(): NOWY adres URL —http://ps1dp.contoso.com:80/SMS_DP_SMSPKG$/Content_GUID.1/sccm?/ConfigMgrTools.msi
01-13-2016 17:56:42.573 DataTransferService 2752 (0xac0) Uruchamianie pobierania usługi BITS dla zadania DTS "{ID}".
01-13-2016 17:56:42.573 DataTransferService 2752 (0xac0) BITSHelper: Pełna ścieżka źródłowa do przeniesienia =http://PS1DP.contoso.com:80/SMS_DP_SMSPKG$/Content_GUID.1/sccm?/ConfigMgrTools.msi
Usługa transferu danych kończy pobieranie i oznacza pomyślne zadanie. W DataTransferService.log:
01-13-2016 17:56:42.666 DataTransferService 2748 (0xabc) Zadanie: {ID}, łączna liczba plików: 1, przeniesione pliki: 0, łączna liczba bajtów: 5664768, przetransferowane bajty: 262144
01-13-2016 17:56:42.869 DataTransferService 1568 (0x620) Zadanie: {ID}, łączna liczba plików: 1, Transferowane pliki: 1, Łączna liczba bajtów: 5664768, Przetransferowane bajty: 5664768
01-13-2016 17:56:42.885 DataTransferService 2752 (0xac0) DTSJob {ID} w stanie "NotifiedComplete".
01-13-2016 17:56:42.885 DataTransferService 2752 (0xac0) Zadanie DTS {ID} zostało ukończone: Stan: SUCCESS,Następnie Menedżer transferu zawartości czyści zadanie DTS, a usługa CAS rozpoczyna sprawdzanie skrótu pobranych plików binarnych.
W ContentTransferManager.log:
01-13-2016 17:56:42.901 ContentTransferManager 2728 (0xaa8) CCTMJob::_Cleanup(JobID={ID}) — anulowanie zadania DTS z domyślnym dostawcą <>
01-13-2016 17:56:42.901 ContentAccess 2348 (0x92c) Używanie skrótu z informacji o zawartości LS: HashStringW CAS.log:
01-13-2016 17:56:42.948 ContentAccess 2348 (0x92c) Obliczony skrót: HashString
01-13-2016 17:56:42.948 ContentAccess 2348 (0x92c) Weryfikacja skrótu powodzenia z algorytmem skrótu = 32780, preferencja: 4Następnie program Content Access mapuje zawartość do pamięci podręcznej PROGRAMU CCM, w której są teraz przechowywane pobrane pliki binarne. W CAS.log:
01-13-2016 17:56:42.948 ContentAccess 2348 (0x92c) Zapisane mapowanie identyfikatora zawartości Content_GUID.1, C:\WINDOWS\ccmcache\1
01-13-2016 17:56:42.948 ContentAccess 2348 (0x92c) CacheManager: ADD new cache entry for id:Content_GUID Version : 1 Size : 5532K RefCount:1 LastRef Minutes: 0 State : ACTIVE PinDuration : 0 Location : C:\WINDOWS\ccmcache\1
01-13-2016 17:56:42.948 ContentAccess 2348 (0x92c) Utworzono nowy element pamięci podręcznej w lokalizacji C:\WINDOWS\ccmcache\1 dla 1.Content_GUID Rozmiar 5532 KB bajtów
01-13-2016 17:56:42.948 ContentAccess 2348 (0x92c) Pobieranie zakończyło się pomyślnie dla żądania pobrania {GUID}Aktualizacje magazynu stanu ciągłej integracji
CIEnforcementState
dla interfejsów certyfikacji w celu pomyślnego pobrania zawartości. Następnie agent ciągłej integracji pobiera kopię zapasową i rozpoczyna wymuszanie interfejsów certyfikacji. W CIAgent.log:01-13-2016 17:56:43.041 CIAgent 2316 (0x90c) CIAgentJob({ID}): TransitionState(From=StateDownloadingContents, To=StateEnforcingCIs) for Event=Transition
01-13-2016 17:56:43.041 CIAgent 2728 (0xaa8) CIAgentJob({ID}): EnforceCIs
01-13-2016 17:56:43.041 CIAgent 2728 (0xaa8) {ID} — inicjowanie wymuszania zadań.
01-13-2016 17:56:43.073 CIAgent 2728 (0xaa8) Job({ID}) : Wykonywanie: Task(ScopeId_GUID/RequiredApplication_GUID.10.Enforce)
01-13-2016 17:56:43.073 CIAgent 2728 (0xaa8) Job({ID}) : Wykonywanie: Task(ScopeId_GUID/Application_GUID.10.Enforce)
01-13-2016 17:56:43.073 CIAgent 2728 (0xaa8) Job({ID}) : Wykonywanie: Task(ScopeId_GUID/DeploymentType_GUID.6.Enforce)
Rozwiązywanie problemów z krokiem 7
W tym momencie w sekwencji zadań zażądaliśmy i pobraliśmy zawartość kilka razy. Zostało to wykonane przy użyciu standardowych procedur żądania/odpowiedzi dotyczących zawartości. Te procedury są używane w standardowych instalacjach oprogramowania/aplikacji poza sekwencją zadań. Ponieważ sekwencja zadań pomyślnie użyła tych procedur, istnieje niewielkie prawdopodobieństwo ich niepowodzenia podczas tego zadania. Jeśli jednak wystąpią problemy z żądaniami lokalizacji zawartości lub dostępem, sprawdź następujące pliki dziennika, aby uzyskać wskazówki dotyczące tego, gdzie proces kończy się niepowodzeniem:
- CIAgent.log
- CAS.log
- ContentTransferManager.log
- DataTransferService.log
- LocationServices.log
- MP_Location.log
Krok 8. Typ wdrożenia aplikacji jest wymuszany przez wykonanie wiersza polecenia
Teraz jest praca wymuszania instalacji aplikacji. Będzie ona używać standardowych składników i przepływu instalacji aplikacji:
AppDiscovery
AppEnforce
AppDiscovery
odnajduje aplikację i jej właściwości. W AppDiscovery.log:ActionType — czas instalacji, maksymalny czas wykonywania = 120 minut dla narzędzia AppDT "ConfigMgr 2012 Toolkit R2 — Instalator Windows (*plik .msi)" [ScopeId_GUID/DeploymentType_GUID], poprawka — 6
AppEnforce
rozpoczyna wymuszanie instalacji przez wykrywanie typu wdrożenia aplikacji. W przypadku tożsamości usługi zarządzanej używa kodu produktu, aby sprawdzić, czy jest już zainstalowany. Przy założeniu, że stan wykrywania nie został odnaleziony, instalacja będzie kontynuowana. W AppEnforce.log:01-13-2016 17:56:43.104 AppEnforce 2216 (0x8a8) +++ Uruchamianie wymuszania instalacji dla jednostek DT aplikacji "ConfigMgr 2012 Toolkit R2 — Instalator Windows (*.msi pliku)" ApplicationDeliveryType — ScopeId_GUID/DeploymentType_GUID, Poprawka — 6, ContentPath — C:\WINDOWS\ccmcache\1, Kontekst wykonywania — dowolne
01-13-2016 17:56:44.666 AppEnforce 2216 (0x8a8) +++ Nie odnaleziono aplikacji. [Identyfikator appDT: ScopeId_GUID/DeploymentType_GUID, poprawka: 6]Teraz usługa AppEnforce przygotuje środowisko wymuszania, analizuje wiersz polecenia i inne parametry instalacji, a następnie przygotowuje katalog roboczy i wykonuje wiersz polecenia.
W AppEnforce.log:
01-13-2016 17:56:44.682 AppEnforce 2216 (0x8a8) Środowisko wymuszania aplikacji:
Kontekst: maszyna
Wiersz polecenia:msiexec /i "ConfigMgrTools.msi" /q /L*V "C:\Windows\CCM\Logs\MSI_install.log"
Zezwalaj na interakcję z użytkownikiem: Nie
Tryb interfejsu użytkownika: 0
Token użytkownika: null
Identyfikator sesji: 4294967295
Ścieżka zawartości: C:\WINDOWS\ccmcache\1
Katalog roboczy:
01-13-2016 17:56:44.682 AppEnforce 2216 (0x8a8) Przygotowany katalog roboczy: C:\WINDOWS\ccmcache\1
01-13-2016 17:56:44.713 AppEnforce 2216 (0x8a8) Przeanalizowane cmdLine:msiexec /i "ConfigMgrTools.msi" /q /L*V "C:\Windows\CCM\Logs\MSI_install.log"
01-13-2016 17:56:44.713 AppEnforce 2216 (0x8a8) Znaleziono plik wykonywalny msiexec z pełną ścieżką C:\WINDOWS\system32\msiexec.exe
01-13-2016 17:56:45.666 AppEnforce 2216 (0x8a8) Wykonywanie wiersza polecenia:"C:\WINDOWS\system32\msiexec.exe" /i "ConfigMgrTools.msi" /q /L*V "C:\Windows\CCM\Logs\MSI_install.log" /qn
z kontekstem systemu
01-13-2016 17:56:44.729 AppEnforce 2216 (0x8a8) Przeanalizowane cmdLine:"C:\WINDOWS\system32\msiexec.exe" /i "ConfigMgrTools.msi" /q /L*V "C:\Windows\CCM\Logs\MSI_install.log" /qn
01-13-2016 17:56:45.666 AppEnforce 2216 (0x8a8) Wykonywanie wiersza polecenia:"C:\WINDOWS\system32\msiexec.exe" /i "ConfigMgrTools.msi" /q /L*V "C:\Windows\CCM\Logs\MSI_install.log" /qn
z kontekstem systemuW tym momencie przy założeniu, że istnieje rejestrowanie instalacji MSI, msiexec.exe przejmuje instalację i wykonuje instalację. W Logging.log MSI:
== Pełne rejestrowanie rozpoczęte: 1/13/2016 17:56:45 Typ kompilacji: SHIP UNICODE 5.00.9600.00 Wywoływanie procesu: C:\WINDOWS\system32\msiexec.exe =
Po zakończeniu instalacji msiexec.exe wyśle kod powrotny do instalacji aplikacji. Zainstaluj aplikację ustawi niezbędne zmienne środowiskowe sekwencji zadań wskazujące powodzenie, a następnie zgłosi pomyślną instalację z powrotem do
AppEnforce
programu .W AppEnforce.log:
MSI (c) (BC:EC) [17:56:47:604]: MainEngineThread zwraca wartość 0
01-13-2016 17:56:47.979 InstallApplication 1384 (0x568) Odebrano powiadomienieProgress: 1 (aplikacja została zainstalowana pomyślnie)
01-13-2016 17:56:48.010 InstallApplication 1608 (0x648) Zadanie instalacji zostało zakończone z kodem zakończenia 0x00000000
01-13-2016 17:56:48.010 InstallApplication 1608 (0x648) Odebrano stan wykonania: 1 (aplikacja została zainstalowana pomyślnie)
01-13-2016 17:56:48.010 InstallApplication 1608 (0x648) Ustawienie zmiennej TSEnv "_TSAppInstallStatus'='Success"
01-13-2016 17:56:48.010 InstallApplication 1608 (0x648) Ustawienie zmiennej TSEnv "SMSTSInstallApplicationJobID__ScopeId_GUID/Application_GUID'='"
01-13-2016 17:56:48.010 InstallApplication 1608 (0x648) Krok 2 na 2 ukończone
01-13-2016 17:56:48.010 InstallApplication 1608 (0x648) Wysyłanie komunikatu o stanie powodzeniaAppEnforce
Pasuje do kodu powodzenia do tabeli określonej na karcie Kody powrotne we właściwościach typu wdrożenia aplikacji. Następnie ponownie wykonuje wykrywanie i oznacza ukończenie wymuszania instalacji.W AppEnforce.log:
01-13-2016 17:56:47.620 AppEnforce 2216 (0x8a8) Szukasz kodu zakończenia 0 w tabeli kodów zakończenia...
01-13-2016 17:56:47.620 AppEnforce 2216 (0x8a8) Znaleziono dopasowanie w kodach zakończenia powodzenia.
01-13-2016 17:56:47.620 AppEnforce 2216 (0x8a8) Dopasowany kod zakończenia 0 do wpisu Powodzenie w tabeli kodów zakończenia.
01-13-2016 17:56:47.620 AppEnforce 2216 (0x8a8) Wykrywanie typu wdrożenia aplikacji ConfigMgr 2012 Toolkit R2 — Instalator Windows (plik .msi)(ScopeId_GUID/DeploymentType_GUID, wersja 6) dla systemu.
01-13-2016 17:56:47.635 AppEnforce 2216 (0x8a8) +++ Odnaleziona aplikacja [Identyfikator aplikacji: ScopeId_GUID/DeploymentType_GUID, poprawka: 6]
01-13-2016 17:56:47.635 AppEnforce 2216 (0x8a8) ++++++ wymuszanie aplikacji (4 sekundy) dla dt aplikacji "ConfigMgr 2012 Toolkit R2 — Plik Windows (plik .msi)" [ScopeId_GUID/DeploymentType_GUID], poprawka: 6, identyfikator SID użytkownika: ] ++++++
Rozwiązywanie problemów z krokiem 8
Zainstalowane aplikacje muszą spełniać następujące kryteria:
- Aplikacja musi być typem wdrożenia Instalatora Windows lub Instalatora skryptu. Typy wdrożeń pakietu aplikacji systemu Windows (
.appx
pliku) nie są obsługiwane. - Musi działać na lokalnym koncie systemowym, a nie na koncie użytkownika.
- Nie może on wchodzić w interakcje z pulpitem. Program musi działać w trybie dyskretnym lub w trybie nienadzorowanym.
- Nie może on samodzielnie zainicjować ponownego uruchomienia. Aplikacja musi zażądać ponownego uruchomienia przy użyciu standardowego kodu ponownego uruchomienia (kod zakończenia 3010). Gwarantuje to, że krok sekwencji zadań będzie obsługiwał prawidłowe ponowne uruchomienie. Jeśli aplikacja zwróci kod zakończenia 3010, podstawowy aparat sekwencji zadań wykonuje ponowne uruchomienie. Po ponownym uruchomieniu sekwencja zadań będzie automatycznie kontynuowana.
Aby zebrać więcej informacji o źródle błędu, sprawdź dziennik MSI. Poniższy artykuł zawiera więcej informacji na temat rozwiązywania problemów z dziennikami MSI:
Odczytywanie dziennika msi narzędzia wdrażania
Poniższy artykuł zawiera informacje specyficzne dla produktu i niektóre ogólne porady dotyczące rozwiązywania problemów z dziennikami MSI:
Rozwiązywanie problemów z błędami instalacji pakietu Office
Aby uzyskać więcej informacji na temat typowych błędów instalatora MSI, zobacz komunikaty o błędach MsiExec.exe i InstMsi.exe.
Krok 9. Aplikacja jest wykrywana jako zainstalowana, a stan wymuszania jest zgłaszany z powrotem do Menedżera sekwencji zadań
W tej chwili agent ciągłej integracji sprawdza magazyn stanów ciągłej integracji pod kątem stanu wymuszania urzędów certyfikacji. Agent DCM działa tak samo, jak również monitorowanie postępu i rejestrowanie go w celu DCMAgent.log.
Instalacja została ukończona, a wykrywanie oznaczyło je jako zainstalowane. Magazyn stanu ciągłej integracji wykryje, że stan istniejącej ciągłej integracji zmienił się z Wymuszanie na EnforcementSuccess.
W CIStateStore.log:
01-13-2016 17:56:47.667 CIStateStore 2728 (0xaa8) Istniejący stan ciągłej integracji został zmieniony
01-13-2016 17:56:47.667 CIStateStore 2728 (0xaa8) [ScopeId_GUID/DeploymentType_GUID:6] CiEnforceState zmieniono: Wymuszanie -> EnforcementSuccess
01-13-2016 17:56:47.729 CIStateStore 2348 (0x92c) Istniejący stan ciągłej integracji został zmieniony
01-13-2016 17:56:47.776 CIStateStore 2728 (0xaa8) [ScopeId_GUID/RequiredApplication_GUID:10] CiEnforceState zmieniono: Wymuszanie -> EnforcementSuccessPo otrzymaniu nowego stanu wymuszania z magazynu stanu ciągłej integracji agent ci oznaczy swoje zadania jako ukończone i przejdzie do raportowania stanu wymuszania. W CIAgent.log:
01-13-2016 17:56:47.823 CIAgent 2348 (0x92c) JobTaskHelper — Inicjowanie następnego zadania w razie potrzeby
01-13-2016 17:56:47.823 CIAgent 2348 (0x92c) Job({ID}): Already Completed : Task(ScopeId_GUID/DeploymentType_GUID.6.Enforce)
01-13-2016 17:56:47.823 CIAgent 2348 (0x92c) Job({ID}): Already Completed : Task(ScopeId_GUID/Application_GUID.10.Enforce)
01-13-2016 17:56:47.823 CIAgent 2348 (0x92c) Job({ID}): Already Completed : Task(ScopeId_GUID/RequiredApplication_GUID.10.Enforce)
01-13-2016 17:56:47.838 CIAgent 2316 (0x90c) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=StateEnforcementReporting)Raportowanie wymuszania obejmuje sprawdzanie magazynu stanów ciągłej integracji pod kątem stanu zgodności aplikacji. Po ustawieniu zgodności agent ciągłej integracji przejdzie na ukończone i wyczyści zadanie.
W CIStateStore.log:
01-13-2016 17:56:47.932 CIStateStore 2316 (0x90c) [ScopeId_GUID/RequiredApplication_GUID:10] Zmieniono stan CIState: Niezgodne —> zgodne
W CIAgent.log:
01-13-2016 17:56:47.963 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=Completed)
01-13-2016 17:56:47.963 CIAgent 2728 (0xaa8) CIAgentJob({ID}): CAgentJob::HandleEvent(Event=Transition, CurrentState=Completed)
01-13-2016 17:56:47.963 CIAgent 2728 (0xaa8) CIAgentJob({ID}): Usuwanie zadania CIAgent
01-13-2016 17:56:47.963 CIAgent 2728 (0xaa8) Usunięte zadanie CIAgent {ID}Agent DCM przekazuje powiadomienie o powodzeniu do procesu Instalowanie aplikacji (smsappinstall.exe), a agent DCM czyści zadanie.
W DCMAgent.log:
01-13-2016 17:56:47.979 DCMAgent 1384 (0x568) CAppMgmtSDK::GetEvaluationState ScopeId_GUID/RequiredApplication_GUID.10 = Wymuszone
01-13-2016 17:56:47.979 DCMAgent 2316 (0x90c) DCMAgentJob({ID}): CDCMAgentJob::HandleEvent(Event=NotifyProgress, CurrentState=Success)
01-13-2016 17:56:47.979 InstallApplication 1608 (0x648) Odebrano powiadomienie o ukończeniu zadania od agenta DCM
01-13-2016 17:56:47.995 DCMAgent 2348 (0x92c) CDCMAgentJobMgr::D eleteJob — żądanie usunięcia zadania agenta DCM {ID}Na koniec kod zakończenia jest zwracany z powrotem do Menedżera sekwencji zadań. Menedżer sekwencji zadań aktualizuje odpowiednie zmienne środowiskowe sekwencji zadań i wznawia następne zadanie w sekwencji. W SMSTS.log:
01-13-2016 17:56:48.073 TSManager 2176 (0x880) Proces zakończony kodem zakończenia 0
01-13-2016 17:56:48.073 TSManager 2176 (0x880) Pomyślnie ukończono akcję (Zainstaluj aplikację) z kodem zakończenia win32 0
Więcej informacji
W celach związanych z rozwiązywaniem problemów najlepszym rozwiązaniem jest utworzenie i użycie zduplikowanej kopii sekwencji zadań produkcyjnych. Może być konieczne zmodyfikowanie sekwencji zadań w celu uwzględnienia większej liczby zadań zbierania danych. Może być konieczne wdrożenie sekwencji zadań na maszynie testowej.
Wdrożenia, które mają problemy, zwykle będą zgłaszać błędy w obszarze roboczym Monitorowanie . Te błędy można zobaczyć po wybraniu pozycji Błąd wdrożeń>. Aby uzyskać więcej informacji na temat rozwiązywania tych błędów, zobacz następujący artykuł:
Aby uzyskać więcej informacji na temat kroków sekwencji zadań, zobacz Kroki sekwencji zadań.