Profiler
AbraGen Profiler je profilovací nástroj, který je schopen měřit čas provádění některých vybraných metod.

Nástroj je možné spustit klávesovou zkratkou Ctrl+Alt+Shift+F12. Profiler je taktiež k dispozícii v okne otvoreného rozhrania.
Příklad vzhledu profileru
Je určený predovšetkým servisným konzultantom servisnej siete výrobcu a vývojarom.
Příkladem využití může být např. situace, kdy je potřeba odhalit, proč je u konkrétního klienta pomalá skladová uzávěrka apod.

V hornej lište nástroja je k dispozícii niekoľko funkcií:
Názov | Kl. | Popis |
---|---|---|
Start Stop |
ctrl+F1
ctrl+F2 |
Pomocou funkcie Štart, resp. Stop užívateľ spustí, resp. zastaví profilovanie. Profilování je inkrementální a dokud se neprovede zobrazení naměřených statistik pak se naměřené časy sčítají. Profilovanie je tiež možné spustiť pri štarte systému ABRA Gen pomocou parametra spustenia ProfilingAutoStart. Meranie musí začať a skončiť v rovnakom bode. Pokiaľ teda napr. chceme zmerať ako dlho trvá tlač reportu, je potrebné začať meranie buď v agende a vrátiť sa späť do tej istej agendy alebo začať meranie v malom číselníku tlačových zostáv a po tlači sa vrátiť späť do toho istého malého číselníka (tlačíme prostredníctvom funkcie preview pomocou skratky Ctrl+P). V opačnom prípade zobrazí Profiler chybu "list index out of bounds". Dočasná data si profiler nejdříve zapisuje do paměti a po překročení výrobcem dané hranice (která není velká) se data přepíší do dočasného souboru na disk a paměť se uvolní pro další zápis. Tudíž je možné profilovat i operace, které generují větší množství dat, aniž by došlo ke kolizi díky zaplnění paměti. |
Show statistics | ctrl+F3 | Vykoná export štatistík nameraných časov, tzn. dôjde k ich zobrazeniu. Zároveň sa tým tiež vynuluje vnútorné počítadlo a pri opätovnom spustení profilovania sa počíta od nuly. |
Open | ctrl+O | Umožňuje načítať namerané štatistiky zo súboru s príponou *.ap. |
Save | ctrl+S |
Umožňuje uložiť namerané štatistiky do súboru s príponou *.ap. Ukládají se vždycky všechny naměřené statistiky, bez ohledu na případné nastavení filtru. |

Nástroj zobrazuje seznam metod, resp. jejich skupin a případně i informace o voláních. Vše je rozděleno podle vláken, mezi kterými se je možné přepínat v panelu Threads.
Nad každým oknem s naměřenými statistikami je možné stiskem pravého tlačítka myši vyvolat lokální nabídku a výsledek zkopírovat do schránky nebo uložit do souboru ve formátu CSV.
Názov | popis |
---|---|
Group By Area, Class, Method | Pohľad zoskupinovaný podľa oblastí, tried a metód. V tomto pohľade je zobrazený aj detail volania, pokiaľ je k dispozícii. Ide o určité užitočné časti kódu, napr. SQL dopyty. |
Group By Area, Method | Pohľad zoskupinovaný podľa oblastí a metód. |
Group By Area | Pohľad zoskupinovaný podľa oblastí. |
Show callers | Zobrazí okno s nadradenými volajúcimi, ktoré volajú aktuálny riadok. |
Show children calls | Zobrazí okno vnorených volaní, ktoré volá aktuálny riadok. Pri poklikaní na riadok vnoreného volania sa kurzor označí toto vnorené volanie v hlavnom zozname. |

Názov | popis |
---|---|
method |
Názov metódy. Prefix pred jej názvom označuje oblasť, do ktorej metóda patrí. Tieto oblasti sú nadefinované interne a umožňujú ľahšiu orientáciu medzi metódami. Oblasti sú odlíšené farbou. Zoznam oblastí je nasledujúci:
Pri vyhľadávaní problémov je vhodné sa najprv zamerať na oblasť E, ktorá by nemala vôbec nastávať, ďalej SCR, SG, UF a efektivitu SQL dopytov. |
w/children | Celkový čas v sekundách s vnorenými volaniami. Ide o súčin stĺpcov calls a avg. Užívateľ typicky zoradí zoznam podľa hodnôt v stĺpci w/children a postupuje podľa najdlhších časov. Podozrivé bývajú napr. tie časti kódu, ktoré sa vyvolajú často a trvajú dlho. |
wo/children | Čas v sekundách bez vnorených volaní. Ide o nepokryté oblasti, ktorých by v budúcich verziách malo ubúdať. |
calls | Počet volaní. |
min | Najkratšie namerané volanie. |
max | Najdlhšie namerané volanie. |
avg | Priemerný čas volania. |
ThreadId | ID vlákna. |
Hodnoty v seznamu je možné:
- Řadit - poklikem myši na záhlaví sloupce
-
Filtrovat - s využitím položky Filter (prvek typu skrytý seznam) umístěné v pravé horní části uživatelského rozhraní
Do položky Filter je možné zadávat regulární výrazy, které se porovnávají s obsahem sloupce method. Pokud je položka Filter prázdná, zobrazí se všechny záznamy (volané metody). Pokud regulární výraz není správně sestaven (obsahuje syntaktické chyby), nezobrazí se žádné záznamy.