Debugování a řešení problémů
|
Pokud Mobilchange nepracuje správně, je možno spouštět některé jeho komponenty v ladicím (debug) módu.
To znamená, že komponenta neběží jako servis, ale jako konzolová aplikace, která o své činnosti vypisuje zprávy
na obrazovku. Tyto zprávy nám pomohou zjistit, v čem je problém.
Obsah
- Jak spustit jednotlivé komponenty v ladicím režimu?
- Jak nastavit konzolové okno, aby bylo použitelné?
- Jak probíhá odeslání SMS?
- Jak probíhá příjem SMS?
- Speciální možnosti debugování
Jak spustit jednotlivé komponenty v ladicím režimu?
Většinu serverových komponent MobilChange je možno spustit v ladicím režimu,
ve kterém je dobře vidět co dělají či nedělají.
Postup:
- Zastavte a zadisablujte službu, kterou chcete ladit
- Najděte EXE soubor, který ji obsluhuje - zpravidla v Mobilchange\bin
- Spusťte jej s parametrem pro zapnutí debug módu, viz tabulka.
Co lze debugovat a jak:
Jméno servisu | jméno EXE |
Mobilchange.Kernel | mxkernel.exe debug (všechny podprocesy zapisují do stejného okna 1) |
Mobilchange.Kernel (proces out) | mxkernel.exe out (spustí jen správce odchozích SMS 2) |
Mobilchange.Kernel (proces in) | mxkernel.exe in (spustí jen správce příchozích SMS 2) |
Mobilchange.Kernel (proces line) | mxkernel.exe line line1 (spustí jen ovladač linky line1 2) |
Mobilchange.SMS Forward | smsfw.exe |
SMS Reminder | smsrmnd.exe |
Mobilchange.Gateway.SMS | mxGwsms2k.exe notserv Mobilchange-Gateway-sms |
Mobilchange.SmtpPop3 | mxsmtp.exe -d |
UMS.TaskManager 3) | DSServMngr.exe -debug |
1) ekvivalent spustění bin/0mxKernel!.cmd
2) ekvivalent spustění bin/2mxKernel_multiwindow.cmd - spustí všechny procesy, každý ve vlastním okně
3) viz též zde
zpět na začátek
Jak nastavit konzolové okno, aby bylo použitelné?
Kliknutím na ikonu v levém horním rohu okna zobrazíte menu. V něm zvolte Properties.
Na záložce Layout nastavte Screen Buffer Size - Height na 9999.
Tím se na pravé hraně okna utvoří scrollbar a okno si pamatuje výstup programu až do délky 9999 řádek. Ten je pak
možno označit a nakopírovat do schránky pomocí volby Edit v menu pod ikonou.
zpět na začátek
Jak probíhá odeslání SMS?
Ve všech bodech zpracování je SMS reprezentována "řídícím" textovým souborem a jedním
datovým souborem. Řídící soubor je obyčejný textový soubor, editovatelný například Notepadem.
V adresářích mail/in/ a mail/out/ určuje první písmeno, jaká gateway má soubor zpracovat
(e,f = MS Exchange, l = Lotus Notes, s = SMTP/POP3), přípona řídícího souboru je zde CTL.
Zpracování SMS probíhá podle následujícího postupu:
- Gateway dostane zprávu od uživatele a uloží ji do mail/in/.
- Správce odchozích SMS přebere zprávu, ověří práva, řídící soubor přesune do queue/out/lineX (podle toho, která linka
má zprávu odeslat) a datový soubor do queue/text/lineX.
- Driver linky vyhledává soubory queue/out/lineX/*.mx. Pokud nějaký najde,
pokusí se o odeslání. Dále se děje toto:
- Pokud bylo odeslání úspěšné, a operátor podporuje delivery report, je řídící soubor přesunut do queue/drwait/. Zde čeká na
delivery report - jakmile dojde, dostane uživatel zprávu o doručení SMS na MT. Pokud vyprší časový limit čekání na DR (DR nepřijde), dostane
uživatel zprávu o tom, že SMS byla odeslána, ale nedošel DR.
- Pokud bylo odeslání úspěšné, a operátor nepodporuje delivery report, je uživateli doručena zpráva o odeslání SMS
- Pokud bylo odeslání neúspěšné, je uživateli doručena zpráva o neodeslání SMS
zpět na začátek
Jak probíhá příjem SMS?
Technologie řídících souborů atd. je stejná jako při odesílání SMS.
- Driver linky přijme SMS a uloží ji do queue/in/.
- Správce příchozích SMS si tyto soubory vyzvedne a vyhledává příjemce zprávy - popsáno zde.
- Pokud je zpráva určena mailovému příjemci, je mu odeslána uložením do mail/out/.
zpět na začátek
Speciální možnosti debugování
Servisy lze obvykle debugovat bez nutnosti spuštění v debug módu. Určitým nastavením v registry necháte vytvářet
log soubor s informacemi o činnosti servisu a restartujte servis.
- Mobilchange.Kernel
Logování kernelu je popsáno v tomto KB dokumentu.
- Mobilchange.SMS Forward
Logování SMS Forward je popsáno zde.
- SMS Reminder
Logování SMS Reminder je popsáno zde.
- Mobile Connection
Zapíná se v registry, popis pro MCO a pro MCN.
- Lotus gateway
Zcela automaticky vytváří ERR soubor v adresáři Mobilchange/mail/out/err. V tomto souboru lze najít informace o poslední
dokončené operaci. Při korektním ukončení činnosti gatewaye se ERR soubor smaže, v případě chyby
na disku zůstává a je možno jej analyzovat.
- Exchange gateway
Logování činnosti - v HKLM/SOFTWARE/Datasys/Mobilchange/global/exchange změňte hodnotu GwDebugMode z nuly na jedničku.
Po restartu servisu se začne generovat logovací soubor C:\gwlog-mx-sms.log.
- Logování skriptových aplikací
Popsáno zde. Lze použít pro získání ladících informací při vývoji aplikace i pro sledování
činnosti aplikace.
zpět na začátek