Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Struktura pliku konfiguracyjnego

Do poprawnego działania PlusDirectoryMonitor potrzebuje pliku konfiguracyjnego, który jest podawany przy wywołaniu programu.

Plik konfiguracyjny:

  • w formacie INI,
  • kodowanie powinno być ustawione na UTF-8 bez BOM,
  • sekcje konfiguracji:
    • ustawienia ogólne [Settings],
    • konfiguracja webserwisów [WebService],
    • ciągu konfiguracji poszczególnych katalogów do monitorowania i związanych z nimi akcjami [Arch#],
    • konfiguracji logów programu [Logger].

Ustawienia ogólne

Sekcja [Settings] zawiera podstawowe ustawienia program. Znajdują się tam następujące parametry:

Nazwa parametruOpis

Uwagi

ProcessAtStartupOkreśla czy wraz z uruchomieniem programu ma być od razu wykonane przetwarzanie katalogów.Możliwe wartości: [true, false]
ProcessOnceOkreśla czy program ma zostać wywołany jednorazowo i po przetworzeniu zakończyć swoje działanie, czy też ma cyklicznie monitorować katalogi zgodnie z ustawieniami w konfiguracjach przetwarzania katalogów.Możliwe wartości: [true, false]
ShowInfoMessagesW przypadku uruchomienia PlusDirectoryMonitor jako osobny program osadzony w pasku zadań systemu operacyjnego, parametr ten określa czy mają pojawiać się informacje o udanym lub nieudanym przetworzeniu pliku.Możliwe wartości: [true, false]
Login

Parametr określający login użytkownika systemu PlusWorkflow, na którym będą dodawane pliki do archiwum dokumentów.

Parametr ten przy pierwszy prawidłowym zalogowaniu się do systemu PlusWorkflow jest szyfrowany i w formie zaszyfrowanej zapisywany do pliku konfiguracyjnego. W przypadku konieczności zmiany loginu zaszyfrowaną wartość można zmienić na tekst jawny i przy kolejnym uruchomieniu zostanie ona ponownie zaszyfrowana.
PasswordParametr określający hasło do systemu PlusWorkflow użytkownika podanego w parametrze Login.

Podobnie jak login przy pierwszej udanej próbie zalogowania jest ono szyfrowane.

AccessWithWebServiceParametr określający, czy korzystać z webservice.Jeżeli parametr nie jest w ogóle podany lub jest ustawiony na false, to domyślnie korzysta z systemowego API. Jeżeli PlusDirectoryMonitor działa jako samodzielna aplikacja, to zawsze wykorzystuje webservice.

Konfiguracja webserwisów 

Sekcja [WebService] zawiera konfigurację połączenia do webserwisów systemu PlusWorkflow. Zawiera następujące parametry:

Nazwa parametruOpisUwagi
WSDL_URLŚcieżka do lokalizacji pliku WSDL.Standardowa wartość: http://IP_serwera/PlusWorkflow/services/
NamespaceNazwa przestrzeni nazw webserwisów.W systemie PlusWorkflow jest to: http://services.plusmpm.com
ServiceNameNazwa klasy implementującej webserwisy.W systemie PlusWorkflow jest to: ReleaseService.

Konfiguracja przetwarzanych katalogów

W celu skonfigurowania przetwarzania katalogu należy utworzyć sekcję [Arch#] w pliku konfiguracyjnym, gdzie # oznacza kolejny numer konfiguracji przetwarzania katalogu.

Każda sekcja [Arch#] dotyczy konfiguracji przetwarzania wybranego katalogu. Poszczególne przetwarzania katalogów odbywają się zgodnie z kolejnością umieszczoną w pliku konfiguracyjnym.

W sekcji tej można ustawić następujące parametry:

  • Active - określa czy dana konfiguracja ma być aktywna. Gdy wartość równa false podana konfiguracja pomijana jest przy przetwarzaniu, gdy wartość równa true przetwarzanie katalogu odbywa się przy każdym uruchomieniu.
  • ShareId - nazwa własna utworzonej konfiguracji. Nie ma wpływu na przetwarzanie, jest jedynie wykorzystywana jako identyfikator np. logach programu.
  • SharePath - ścieżka do przetwarzanego katalogu. Ta sama ścieżka może być wykorzystywana w różnych konfiguracjach [Arch#].
  • SearchSubDirectory - parametr określający czy mają być przetwarzane podkatalogi katalogu podanego w SharePath. Jeśli ustawiony na true to przetwarzane są pliki we wszystkich podkatalogach katalogu ustawionego w SharePath, jeśli ustawiony na false to przetwarzane tylko pliki z będące bezpośrednio w katalogu z SharePath.
  • FileRegExp - wyrażenie regularne dopasowywane do plików. Jeżeli wyrażenie nie zostanie dopasowane do danej nazwy pliku to zostanie on pominięty przy przetwarzaniu.
  • SortFilesBy - opcjonalny parametr służący do sortowania importowanych plików do systemu Plus Workflow wg(możliwe jest sortowanie po nazwie, w tym celu nalezy ustawić wartość na "name" (SortFilesBy = name), lub sortowanie po dacie, odpowiednio ustawiamy wartość na "date" (SortFilesBy = date). Kierunek sortowania można określić za pomocą parametru "SortFilesDirection" (Opisany w poniższym podpunkcie). Domyślnie sortowanie jest wyłączone.
  • SortFilesDirection - opcjonalny parametr służący do ustawienia kierunku sortowania importowanych plików. Domyślnie ustawione jest sortowanie rosnąco. W celu ustawienia sortowania malejącego należy ustawić wartość na "SortFilesDirection = desc". W przypadku sortowania po dacie w dla pokrywających się dat sortowanie automatycznie odbywa się po nazwie.
Parametry ogólne
Nazwa parametruOpisUwagi
ActiveOkreśla czy dana konfiguracja ma być aktywna.Gdy wartość równa false, podana konfiguracja pomijana jest przy przetwarzaniu, gdy wartość równa true przetwarzanie katalogu odbywa się przy każdym uruchomieniu.
ShareIdNazwa własna utworzonej konfiguracji.Nie ma wpływu na przetwarzanie, jest jedynie wykorzystywana jako identyfikator np. logach programu.
SharePathŚcieżka przetwarzanego katalogu.Ta sama ścieżka może być wykorzystywana w różnych konfiguracjach [Arch#].
ArchiveClassIdentyfikator klasy dokumentów.

Wartość w postaci liczby całkowitej.

SearchSubDirectoryParametr określający czy mają być przetwarzane podkatalogi katalogu podanego w SharePath.Jeśli ustawiony na true to przetwarzane są pliki we wszystkich podkatalogach katalogu ustawionego w SharePath, jeśli ustawiony na false to przetwarzane tylko pliki z będące bezpośrednio w katalogu z SharePath.
SaveAsNewVersionParametr określający, czy w przypadku takich samych indeksów dokument zapisać jako nowa wersja.Możliwe wartości: [true, false]
ProcessFilesUnmodifiedByCzas od momentu modyfikacji pliku, po jakim zaczynać dopiero przetwarzanie pliku.Wartość w postaci liczby całkowitej reprezentująca liczbę minut od momentu modyfikacji pliku, po jakiej zaczynać dopiero przetwarzanie pliku.
SortFilesByOpcjonalny parametr służący do określenia kolejności importowania dokumentów.

Możliwe wartości:

  • name - sortowanie po nazwie,
  • date - sortowanie po dacie.

Domyślnie kolejność przetwarzania jest nieokreślona.

SortFilesDirectionOpcjonalny parametr słuzący do określenia kierunku przetwarzania importowania dokumentów.

Możliwe wartości:

  • asc - rosnąco,
  • desc - malejąco.

Domyślnie kierunek przetwarzania jest rosnący.

FileTypeTyp przetwarzanych dokumentów, domyslnie raw.

Możliwe wartości: [RAW, XML].

Gdy podany jest nieobsługiwany typ to plik jest pomijany

FileRegExpRegex, po którym następuje filtrowanie plików po ich pełnych ścieżkachJeżeli pełna ścieżka pliku nie spełnia regexa, to plik jest pomijany.
FileNameRegExmpRegex, po którym następuje filtrowanie plików po ich nazwach.Jeśli nazwa pliku nie spełnia regexa, to plik jest pomijany.
Parametry związane z okresowym uruchamianiem DirectoryMonitor
Nazwa parametruOpisUwagi
CheckAtTimeParametr określający czy przetwarzać katalogi o godzinie ProcessTime.

Możliwe wartości: [true, false].

ProcessTimeGodzina o której mają byc przetwarzane katalogi, gdy wybrany jest parametr CheckAtTime.

Godzina w formacie:

  • hh:mm
CheckPeriodicParametr określający, czy przetwarzać katalogi co określony czas PeriodMożliwe wartości: [true, false].
PeriodOdstęp czasowy, co który mają byc przetwarzane katalogi.

Wartość w postaci liczby całkowitej reprezentującej okres czasowy w milisekundach.

Parametry związane z typem plików RAW
Nazwa parametruOpisUwagi
CopyRawFilesParametr określajacy czy zapisywać pliki RAW w osobnym katalogu RawFileDestinationPath.Możliwe wartości, [true, false].
RawFileDestinationPathŚcieżka do zapisu plików RAW, jeżeli wybrano opcję CopyRawFiles.Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki RAW.
DeleteRawFilesJest to parametr określający czy ma nastąpić usunięcie źródłowego pliku RAW jeżeli z powodzeniem przeniesiono go do archiwum,Możliwe wartości, [true, false].
RawFileRegExpRegex, którym następuje filtrowanie znalezionych ścieżek plików.Jeżeli w regexie jest grupa (oznaczona okrągłymi nawiasami), to przechwycona grupa jest używana jako nowa ścieżka pliku.
RawFileMaskTekst, którym mozna podmienić ścieżkę pliku.Można w tekście wykorzystywać przechwycone grupy z RawFileRegExp w postaci $1, $2 ... itd.
RawFileOnErrorParametr określający operację do wykonania dla plików RAW, których nie udało się dodać do archiwum.

Możliwe wartości:

  • None -> brak działania (domyślnie),
  • Copy -> kopiowanie do RawFileErrorDirectory,
  • Move -> przenoszenie do RawFileErrorDirectory,
  • Delete -> usuwanie pliku.
RawFileErrorDirectoryŚcieżka do katalogu dla plików RAW, których nie udało się dodać do archiwum.Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki RAW, których nie udało się dodać do archiwum.
Parametry związane z typem plików XML
Nazwa parametruOpisUwagi
CopyXMLFilesParametr określajacy czy zapisywać pliki XML w osobnym katalogu XMLFileDestinationPath.Możliwe wartości, [true, false].
XMLFileDestinationPathŚcieżka do zapisu plików XML, jeżeli wybrano opcję CopyXMLFiles.Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki XML.
DeleteXMLFilesJest to parametr określający czy ma nastąpić usunięcie źródłowego pliku XML jeżeli z powodzeniem przeniesiono go do archiwum,Możliwe wartości, [true, false].
XMLRawFileTagParametr określający ścieżkę do tagu w pliku XML, który zawiera nazwę pliku do wgrania do archiwum.

Ścieżka do tagu powinna być jednoznaczna. W przypadku braku jednoznaczności wybrana zostanie pierwsza pasująca wartość (TODO do sprawdzenia!).

Ścieżka musi był pełna (zawierać wszystkie kolejne tagi).

Przykładowo dla pliku XML:

<a>
    <b>
        <c>ścieżka do pliku/plik.pdf</c>
    </b>
    <d>
        <c>inna wartość</c>
    </d>
</a>

Wartość tagu może wynosić jeden z:

  • XMLRawFileTag = <a><b><c>
  • XMLRawFileTag = <b><c>

Nie powinna wynosić:

  • XMLRawFileTag = <a><c>
  • XMLRawFileTag = <c>
XMLRawFileAttributeParametr określający nazwę atrybutu tagu w pliku XML, który zawiera nazwę pliku do wgrania do archiwum, jeżeli w samym tagu XMLRawFileTag się ona nie znajduje.

Przykładowo dla pliku XML:

<a>
    <b>
        <c AA="ścieżka do pliku/plik.pdf" BB="inna wartość"/>
    </b>
</a>

Wartości XMLRawFileTag i XMLRawFileAttribute mogą wynosić:

  • XMLRawFileTag = <b><c>
  • XMLRawFileAttribute = AA
XMLFileOnErrorParametr określający operację do wykonania dla plików XML, których nie udało się dodać do archiwum.

Możliwe wartości:

  • None -> brak działania (domyślnie),
  • Copy -> kopiowanie do XMLFileErrorDirectory,
  • Move -> przenoszenie do XMLFileErrorDirectory,
  • Delete -> usuwanie pliku.
XMLFileErrorDirectoryŚcieżka do katalogu dla plików XML, których nie udało się dodać do archiwum.

Wartość w postaci tekstu reprezentującym ścieżkę do katalogu, do którego mają być zapisywane pliki XML, których nie udało się dodać do archiwum.

Parametry związane z niestandardowymi zapytaniami do baz danych (# - kolejny numer zaczynając od 1, gdyż zapytań może być wiele)
Nazwa parametruOpisUwagi
DBURL#Adres URL połączenia z bazą, 
SQLQuery#Zapytanie do bazy danych, którego wyniki mogą być później wykorzystywane jako wartości indeksów.

W zapytaniu można użyć wartości indeksów, które zostały określone już w inny sposób (np. z nazwy, daty czy pliku xml).

W takim wypadku wartość indeksu należy użyć jako: $IndexN (gdzie N to numer jednego z indexów tam gdzie IndexN_Type jest różny od SQL).

DBUser#Login użytkownika do bazy danych, 
DBPassword#Hasło użytkownika do bazy danych. 
JDBCDriver#Sterownik do bazy danych. 
AllOccurence#Parametr określający czy ten sam plik jest dodawany do archiwum tyle razy ile rekordów zwróci zapytanie zamiast tylko raz z użyciem pierwszego rekordu.

Dla każdego rekordu ustawiane są wartości odpowiednich indeksów z typem SQL. Pozostałe indeksy dla każdego pliku będą miały tą samą wartość.

Ten parametr może wystąpić tylko raz w pliku konfiguracyjnym (brane jest pod uwagę tylko pierwsze takie wystąpienie).

 

Konfiguracja logów

Plik konfiguracyjny jest przy starcie programu wykorzystywany przy konfiguracji logów log4j. Konfiguracja taka powinna być umieszczona w sekcji [Logger] i powinna być zgodna ze standardem konfiguracji log4j. Przykładowa konfiguracja:

log4j.appender.PlusDirectoryMonitor = com.plusmpm.util.logger.DailyRollingFileAppender
log4j.appender.PlusDirectoryMonitor.Threshold = DEBUG
log4j.appender.PlusDirectoryMonitor.File = /home/plusmpm/Logs/PlusDirectoryMonitor.log
log4j.appender.PlusDirectoryMonitor.DatePattern = '.'yyyyMMdd
log4j.appender.PlusDirectoryMonitor.layout = org.apache.log4j.PatternLayout
log4j.appender.PlusDirectoryMonitor.layout.ConversionPattern = %-12t%d{yy-MM-dd HH:mm:ss,SSS} %-5p%23C{1}:%-6L-%x- %m%n
log4j.logger.com.plusmpm.directorymonitor=DEBUG,PlusDirectoryMonitor
  • No labels