W celu podłączenia się do zdalnego interfejsu udostępnianego w technologii JMX trzeba zazwyczaj podać specjalnie sformatowany adres interfejsu oraz dane autoryzacyjne. W przypadku systemu dLibra adres interfejsu ma postać: service:jmx:rmi:///jndi/rmi://[adres serwera]:[port serwera]/mx Jako dane autoryzacyjne należy podać nazwę użytkownika i hasło dla konta 'admin' zdefiniowanego w danym serwerze dLibra .

Poniższy rysunek przedstawia interfejs administracyjny systemu dLibra obsługiwany przy pomocy programu JConsole. Zakładka z widokiem ogólnym pozwala monitorować zużycie procesora i pamięci, liczbę wątków czy załadowanych klas. Szczegółowe informacje znajdują się na kolejnych zakładkach. 

W interfejsie administracyjnym systemu dLibra, poza standardowymi komponentami zarządzania udostępnianymi przez środowisko maszyny wirtualnej Java, dostępne są dedykowane komponenty zarządzania serwerem. Znajdują się one w ostatniej zakładce o nazwie MBeans. Komponenty te podzielone są na grupy odpowiadające strukturze wewnętrznej serwera. W ramach tych grup wyróżniony jest jeszcze podział funkcjonalny. Powstaje w ten sposób hierarchiczna, drzewiasta struktura komponentów. Zgodnie ze specyfikacją Java JMX każdy z komponentów może udostępniać własności oraz metody. Poniżej opisano najistotniejsze z udostępnianych elementów. Te elementy, które pominięto są zazwyczaj elementami przydatnymi tylko w wyjątkowych sytuacjach, wymagają bardzo głębokiej znajomości struktury wewnętrznej systemu dLibra i nie powinny być używane. W opisie zastosowano następującą notację:

  • NazwaAtrybutu - oznacza atrybut, którego wartość może być odczytywana i (opcjonalnie) modyfikowana.
  • nazwaMetody(parametr1,parametr2) - oznacza metodę (polecenie), która może być wywołana. Mogą również występować metody bezparametrowe.
    Ogólnie można założyć, że atrybuty mogą być wykorzystywane do monitorowania pracy serwera, a metody do wykonywania pewnych czynności konserwacyjnych, migracji danych między wersjami lub też np. odtwarzania części danych utraconych na skutek awarii.

    Ostrzeżenie

    Część komponentów pozwala na stosunkowo łatwe dokonanie poważnych zmian w danych przechowywanych w bibliotece cyfrowej. Część z operacji może też być bardzo czasochłonna - przykładowo operacja pełnej reindeksacji publikacji dużej biblioteki cyfrowej w zależności o wydajności serwera może trwać nawet kilka tygodni. Zaleca się zachowanie najwyższej ostrożności przy wykorzystywaniu interfejsu administracyjnego serwera dLibra.

 

Content Server


ZipCache:

  • CacheTimeSpan - Czas życia w cache najstarszego wydania (w godzinach).
  • CurrentZipCacheSize - Aktualny rozmiar cache (w bajtach).
  • CurrentZipCacheSize - Aktualny rozmiar cache w stosunku do rozmiaru maksymalnego (w procentach).
  • MaxZipCacheSize - Maksymalny rozmiar cache (w bajtach).
  • NoOfCachedZipFiles - Liczba plików zip w cache.
  • NoOfZipCacheHits - Liczba "trafień" w cache.
  • NoOfZipCacheMisses - Liczba "chybień" w cache.
  • OldestAccessDate - Data dostępu do najstarszego pliku w cache.
  • ZipCacheHitRatio - Stosunek liczby "trafień" w cache do ogólnej liczby żądań.

 

Event Manager


EventMonitoringBean:

  • NoOfEveEvents- pokazuje liczbę zdarzeń, jakie zostały jeszcze do obsłużenia usługom serwera dLibra. Zdarzenia to np. dodanie nowej publikacji czy modyfikacja opisu, a obsługa ich może polegać np. na aktualizacji indeksów wyszukiwawczych. Liczba zdarzeń powinna przynajmniej raz na dobę (ewentualnie raz na tydzień) spadać do zera. Jeżeli tak nie jest, oznacza to, że serwer dLibra jest przeciążony i nie jest w stanie na bieżąco obsłużyć zadań generowanych przez użytkowników biblioteki.
  • EventProcessingDelay - Opóźnienie w przetwarzaniu zdarzeń (w godzinach).
  • OldestEventDate - Data najstarszego nieobsłużonego zdarzenia.

 

Metadata Server


MaintenanceTasks:

  • reloadDCPatterns() - przeładowuje informacje na temat mapowania zestawu atrybutów zdefiniowanego w bibliotece cyfrowej na schemat DublinCore. Informacje te zawarte są w pliku dc-pattern.properties w podkatalogu conf katalogu głównego serwera.
  • expireAndDeleteTags() - uruchamia zadanie sprawdzenia tagów użytkowników, które dezaktualizuje tagi starsze niż 30 dni oraz usuwa tagi starsze niż 60 dni. Zadania to jest również wykonywane cyklicznie przez serwer.
  • checkMimeTypesConsistency(forceModify) - uruchamia zadanie sprawdzenia poprawności wartości atrybutu format w kontekście formatu pliku głównego publikacji. Parametr forceModify informuje serwer czy należy dokonać modyfikacji bazy danych czy tylko wypisać modyfikowane elementy w logu.

Search Server


IndexBackupTasks:

  • backupIndex(ediMode, pubMode, spellMode) - powoduje utworzenie kopii zapasowej indeksu w zależności od podanych wartości paramterów. Mogą one przyjmować wartości:
    • ediMode:
      • 0 - nie tworzy kopii zapasowej żadnego z indeksów wydań,
      • 1 - tworzy kopię zapasową indeksu wydań,
      • 2 - tworzy kopię zapasową indeksu wersji,
      • 3 - 1 i 2,
      • 4 - tworzy kopię zapasową indeksu wydań w formacie DublinCore (do wyszukiwania ogólnego),
      • 7 - 1, 2 i 4.
    • pubMode:
      • 0 - nie tworzy kopii zapasowej żadnego z indeksów publikacji,
      • 1 - tworzy kopię zapasową indeksu publikacji,
      • 2 - tworzy kopię zapasową indeksu publikacji w formacie DublinCore (do wyszukiwania ogólnego),
      • 3 - 1 i 2.
    • spellMode:
      • 0 - nie tworzy kopii zapasowej żadnego z indeksów poprawności pisowni (spell),
      • 1 - tworzy kopię zapasową indeksu poprawności pisowni dla wydań,
      • 2 - tworzy kopię zapasową indeksu poprawności pisowni dla wydań w formacie DublinCore,
      • 4 - tworzy kopię zapasową indeksu poprawności pisowni dla wersji,
      • 8 - tworzy kopię zapasową indeksu poprawności pisowni dla publikacji,
      • 16 - tworzy kopię zapasową indeksu poprawności pisowni dla publikacji w formacie DublinCore,
      • 31 - 1, 2, 4, 8 i 16
  • restoreIndex(ediMode, pubMode, spellMode) - usuwa bieżące indeksy i odtwarza je z kopii zapasowej w zależności od podanych wartości parametrów. Parametry mają identyczne znaczenie jak przy funkcji backupIndex.
  • synchronizeIndices(ediMode, pubMode, spellMode) - synchronizuje bieżące indeksy wyszukiwawcze z indeksami wykorzystywanymi przez Index Server w zależności od podanych wartości parametrów. Parametry mają identyczne znaczenie jak przy funkcji backupIndex.

 

Index Server


IndexBackupTasks:

  • backupIndex(ediMode, pubMode, spellMode) - powoduje utworzenie kopii zapasowej indeksu w zależności od podanych wartości paramterów. Mogą one przyjmować wartości:
    • ediMode:
      • 0 - nie tworzy kopii zapasowej żadnego z indeksów wydań,
      • 1 - tworzy kopię zapasową indeksu wydań,
      • 2 - tworzy kopię zapasową indeksu wersji,
      • 3 - 1 i 2,
      • 4 - tworzy kopię zapasową indeksu wydań w formacie DublinCore (do wyszukiwania ogólnego),
      • 7 - 1, 2 i 4.
    • pubMode:
      • 0 - nie tworzy kopii zapasowej żadnego z indeksów publikacji,
      • 1 - tworzy kopię zapasową indeksu publikacji,
      • 2 - tworzy kopię zapasową indeksu publikacji w formacie DublinCore (do wyszukiwania ogólnego),
      • 3 - 1 i 2.
    • spellMode:
      • 0 - nie tworzy kopii zapasowej żadnego z indeksów poprawności pisowni (spell),
      • 1 - tworzy kopię zapasową indeksu poprawności pisowni dla wydań,
      • 2 - tworzy kopię zapasową indeksu poprawności pisowni dla wydań w formacie DublinCore,
      • 4 - tworzy kopię zapasową indeksu poprawności pisowni dla wersji,
      • 8 - tworzy kopię zapasową indeksu poprawności pisowni dla publikacji,
      • 16 - tworzy kopię zapasową indeksu poprawności pisowni dla publikacji w formacie DublinCore,
      • 31 - 1, 2, 4, 8 i 16
  • restoreIndex(ediMode, pubMode, spellMode) - usuwa bieżące indeksy i odtwarza je z kopii zapasowej w zależności od podanych wartości parametrów. Parametry mają identyczne znaczenie jak przy funkcji backupIndex.


ReindexTasks:

  • reindexAll(indexMode, pubIndexMode) - powoduje reindeksację całej zawartości biblioteki cyfrowej.
    • indexMode:
      • 0 - nie przeprowadzaj reindeksacji opisów wydań i treści publikacji
      • 1 - przeprowadzona ma być wyłącznie reindeksacja opisów wydań (bez indeksów DublinCore - do wyszukiwania ogólnego),
      • 2 - przeprowadzona ma być wyłącznie reindeksacja treści publikacji,
      • 3 - 1 i 2,
      • 4 - przeprowadzona ma być wyłącznie reindeksacja opisów DublinCore - do wyszukiwania ogólnego,
      • 7 - 1, 2 i 4.
    • pubMode:
      • 0 - nie przeprowadzaj reindeksacji publikacji grupowych i planowanych,
      • 1 - przeprowadzona ma być wyłącznie reindeksacja opisów publikacji grupowych i planowanych,
      • 2 - przeprowadzona ma być wyłącznie reindeksacja opisów publikacji grupowych i planowanych w formacie DublinCore (do wyszukiwania ogólnego),
      • 3 - 1 i 2.
  • checkIndexesConsistency() - sprawdza i naprawia spójność indeksów wyszukiwawczych.
  • reindexEditions(editionsIds, indexMode) - powoduje reindeksację wydań o podanych identyfikatorach. Wartość parametru indexMode ma takie samo znaczenie jak w przypadku polecenia reindexAllEditions(...) , a jako wartość parametru editionsIds powinny być podane identyfikatory wydań do reindeksacji oddzielone od siebie przecinkami.
  • refreshSpellIndexes(indexMode, pubIndexMode) - powoduje utworzenie indeksów poprawności pisowni w zależności od podanych wartości parametrów. Parametry mogą przyjmować następujące wartości:
    • indexMode:
      • 0 - nie tworzy żadnego indeksu poprawności pisowni,
      • 1 - tworzy indeks poprawności pisowni dla wydań,
      • 2 - tworzy indeks poprawności pisowni dla wersji,
      • 3 - 1 i 2,
      • 4 - tworzy indeks poprawności pisowni dla wydań w formacie DublinCore,
      • 7 - 1, 2 i 4.
    • pubIndexMode:
      • 0 - nie tworzy żadnego indeksu poprawności pisowni,
      • 1 - tworzy indeks poprawności pisowni dla publikacji,
      • 2 - tworzy indeks poprawności pisowni dla publikacji w formacie DublinCore,
      • 3 - 1 i 2.

dLibra JMX Management Service


RMIConnectionsInfo:

  • NoOfRMIThreads - liczba zewnętrznych połączeń do serwera dLibra.
  • RMIConnectionIPs - adresy IP komputerów, z których obecnie nawiązane są połączenia do serwera dLibra.


ServiceWrapperManager:

  • stop() - wyłącza serwer.
  • restart() - restartuje serwer.
  • No labels