Przejdź do głównej zawartości

Diagnostyka środowiska w NextPDF Connect

Przed uruchomieniem właściwej pracy potwierdź, że serwer NextPDF Connect działa poprawnie i ma możliwości wymagane przez przepływ pracy. Traktuj tę diagnostykę jako pierwszy krok w każdym potoku agentowym. Narzędzia potwierdzone w rejestrze narzędzi serwera to diagnostic.doctor, diagnostic.capabilities oraz diagnostic.verify. Rejestr udostępnia je pod nazwami protokołu z kropkami, a dostępne jest też powiązane narzędzie diagnostic.inspect. Wszystkie należą do narzędzi Core.

Okno terminala
composer require nextpdf/server

Skonfiguruj transport. Narzędzie veraPDF jest potrzebne wyłącznie do opcjonalnego kroku weryfikacji zgodności. Weryfikacja strukturalna nie wymaga zewnętrznego narzędzia.

  • diagnostic.doctor zwraca podstawowy raport o kondycji: wersję PHP, załadowane rozszerzenia, wersję serwera, aktywny tier oraz wszystkie ostrzeżenia. Traktuj status jako bramkę. Kontynuuj przy ok, przeczytaj warnings przy warning i zatrzymaj się przy error.
  • diagnostic.capabilities wymienia zarejestrowane możliwości wraz z ich poziomem (tier) oraz stanem w środowisku uruchomieniowym (available, unavailable, degraded). Liczba możliwości zależy od środowiska uruchomieniowego i poziomu (tier), więc nie wpisuj jej na sztywno. Sprawdź każdą możliwość wymaganą przez przepływ pracy.
  • diagnostic.verify sprawdza integralność strukturalną: nagłówek PDF, znacznik EOF oraz tablicę odwołań krzyżowych. Dotyczy to struktury dokumentu dostępnej poprzez drzewo stron (ISO 32000-2 §7.5). Wraz z compliance_flavour wywołuje także veraPDF.

Wynik diagnostyki jest zwykłą odpowiedzią w ramach każdego transportu (PHP Standard Recommendation 18, PSR-18 §p2).

NarzędzieRolaPoziom ryzyka
diagnostic.doctorRaport o kondycji środowiskaBezpieczne
diagnostic.capabilitiesInwentarz możliwości wraz ze stanemBezpieczne
diagnostic.verifyWeryfikacja strukturalna / zgodnościBezpieczne
create_pdf, add_text, output_pdfTest dymny dokumentuzgodnie z dokumentacją w innym miejscu

Te nazwy są nazwami protokołu pochodzącymi z rejestru. Katalogiem referencyjnym jest katalog narzędzi. Zainstalowany poziom (tier) decyduje o tym, które narzędzia i możliwości są dostępne, więc nigdy nie zakładaj stałej liczby narzędzi ani możliwości.

  1. diagnostic.doctor (bez argumentów) → odczytaj status.
  2. diagnostic.capabilities (bez argumentów) → potwierdź, że każda potrzebna możliwość ma stan available.
  3. create_pdf, a następnie add_text → minimalny dokument testowy.
  4. diagnostic.verify z document_id → sprawdzenia strukturalne.
  5. Opcjonalnie diagnostic.verify z compliance_flavour: "4" → veraPDF.
  6. output_pdf (base64) → zniszcz sesję testową.

Uzależnij potok od wartości diagnostic.doctorstatus. Powiąż każdą zależność przepływu pracy z konkretnym identyfikatorem możliwości i potwierdź stan available, zanim uruchomisz zależne kroki. Traktuj degraded jako zagrożenie dla jakości, które wymaga wyrywkowej kontroli. Zawsze uruchamiaj strukturalne diagnostic.verify. Wariant zgodności uruchamiaj tylko wtedy, gdy zgodność ma znaczenie. Jeśli narzędzie veraPDF jest niedostępne, zwracany jest czytelny wynik „nie znaleziono” zamiast usterki serwera.

  • Brak veraPDF. Wywołanie zgodności zwraca jawny wynik „nie znaleziono”. Sprawdzenia strukturalne nadal działają. Jeśli potrzebujesz weryfikacji zgodności, zainstaluj veraPDF i umieść narzędzie w zmiennej PATH procesu serwera.
  • Przekroczenie limitu czasu veraPDF. Duże dokumenty mogą przekroczyć limit czasu weryfikacji. Zmniejsz rozmiar dokumentu lub zwiększ limit czasu w konfiguracji serwera.
  • Możliwość w stanie degraded. Zależność jest dostępna tylko częściowo, więc jakość wyniku może się obniżyć. Sprawdź w dziennikach serwera, który mechanizm awaryjny jest używany.
  • Doctor w stanie error. Krytyczny wymóg nie jest spełniony. Nie kontynuuj.

Weryfikacja strukturalna jest szybka. Ścieżka zgodności uruchamia veraPDF i mieści się w limicie czasu weryfikacji. Szeroki budżet uwzględnia ten podproces.

Dane wyjściowe diagnostyki ujawniają szczegóły środowiska: wersję PHP, rozszerzenia oraz poziom (tier). Traktuj je jako informacje przeznaczone wyłącznie dla operatora i nie pokazuj ich niezaufanym wywołującym.

StwierdzenieSpecyfikacjaKlauzulareference_id
Wynik diagnostyczny jest zwykłą odpowiedzią transportu.PSR-18§p2
Integralność strukturalna dotyczy struktury zakotwiczonej w drzewie stron.ISO 32000-2§7.5

Wariant zgodności uruchamia veraPDF i przekazuje jego werdykt. NextPDF sam nie potwierdza zgodności. Decyzję podejmuje walidator.

Nie dotyczy — wszystkie narzędzia diagnostyczne należą do Core.

TransportDostępnyUwagi
MCP (stdio)TakWyniki diagnostyki są wynikami narzędzi.
RESTTakPunkty końcowe kondycji odpowiadają tym narzędziom.
gRPCTakUnarne; wynik zawiera te same pola statusu.

Wszystkie trzy narzędzia diagnostyczne są bezpieczne: tylko do odczytu, bez efektów ubocznych. Nigdy nie uruchamiają bramki potwierdzenia. Testowe output_pdf działa w trybie base64 (Review, bez bramki).

Diagnostyka nigdy nie wymaga bramki.

{ "allowed": true }