Mikä on Log4j?
Log4j on nopea, joustava ja luotettava puunkorjuukehys (APIS), joka on kirjoitettu Javalla ja joka on kehitetty vuoden 1996 alussa. Sitä jaetaan Apache-ohjelmistolisenssillä. Log4J on siirretty kielille C, C ++, C #, Perl, Python, Ruby ja Eiffel. Se on työkalu, jota käytetään pieniin ja suuriin Selenium Automation -hankkeisiin.
Miksi käyttää Log4j: tä?
- Se on avoimen lähdekoodin
- Log4j: n avulla on mahdollista tallentaa Selenium Automationin virtaustiedot tiedostoon tai tietokantoihin
- Log4j: tä käytetään sekä suuriin että pieniin projekteihin
- Log4j: ssä käytämme lokilausekkeita SOPL-käskyjen sijaan koodissa, jotta voimme tietää projektin tilan sen suorituksen aikana
Log4j: ssä on kolme pääkomponenttia
- Loggerit : Se on vastuussa tietojen kirjaamisesta. Loggerien sisällyttäminen projektiin on suoritettava seuraavat vaiheet -
- Luo ilmentymä logger-luokalle : Logger-luokka on Java-pohjainen apuohjelma, jonka kaikki yleiset menetelmät on jo toteutettu käyttämään log4j: tä
- Määritä Log4j-taso : Lokitasoja on ensisijaisesti viisi erilaista
- Kaikki - Tämän tason loki kirjaa kaiken (se kytkee kaikki lokit päälle)
- VIRAHAKU - tulosta virheenkorjaustiedot ja on hyödyllinen kehitysvaiheessa
- INFO - tulosta tietoviesti, joka korostaa sovelluksen etenemistä
- VAROITUS - tulosta tietoja virheellisestä ja odottamattomasta järjestelmän toiminnasta.
- ERROR - tulostusvirhesanoma, joka saattaa antaa järjestelmän jatkaa
- FATAL - tulosta järjestelmän kriittiset tiedot, jotka aiheuttavat sovelluksen kaatumisen
- POIS - Ei kirjausta
- Liitteet : Sitä käytetään LogEventsin toimittamiseen määränpäähän. Se päättää, mitä lokitiedoille tapahtuu. Yksinkertaisesti sanottuna sitä käytetään lokien kirjoittamiseen tiedostoon. Seuraavassa on muutama tyyppi Liitteitä
- ConsoleAppender kirjautuu vakiotulostukseen
- File appender tulostaa lokit johonkin tiedostoon
- Tiedostonlisäosan vierittäminen tiedostoon, jonka koko on suurin
Huomaa: Log4j-ominaisuuksissa voimme soittaa appenderille millä tahansa nimellä. Myös muita liittäjiä on, mutta rajoitamme näihin muutamiin.
- Asettelut : Se on vastuussa lokitietojen muotoilemisesta eri tyyleissä.
Logger-luokka tarjoaa erilaisia tapoja käsitellä lokitoimintoja. Se tarjoaa kaksi staattista menetelmää lokiobjektin hankkimiseksi.
Julkinen staattinen logger getRootLogger ()Julkinen staattinen logger getLogger (merkkijono)
Kuinka log4j määritetään?
Log4j: n konfiguroimiseksi meidän on päätettävä, mikä liitin otetaan käyttöön. Vastaavasti asetetaan lisäyksen parametrit.
- Käytämme DEBUG-tasoa ja RollingFileAppenderia
- Teemme kaksi kokoonpanoa tai lokia,
- Ensinnäkin: root-kirjaaja, joka kirjoittaa kaikki järjestelmän luomat lokit tiedostonimeksi eli Selenium.logs
- Toinen: Kirjoittaa manuaalisten komentojen tuottamat tiedot koodiksi tiedostonimelle Manual.logs
- Asettelu on PatternLayout
#Root logger
log4j.rootLogger = VIRHE, tiedostolog4j.appender.file = org.apache.log4j.RollingFileAppenderlog4j.appender.file.File = D: \\ Guru99 \\ src \\ Selenium.logslog4j.appender.file.maxFileSize = 900 ktlog4j.appender.file.maxBackupIndex = 5log4j.appender.file.layout = org.apache.log4j.PatternLayoutlog4j.appender.file.layout.ConversionPattern =% d {ABSOLUTE}% 5p% c {1} :% L -% m% nlog4j.appender.file.Append = väärä
#Sovelluslokit
log4j.logger.devpinoyLogger = VIKA, dest1log4j.appender.dest1 = org.apache.log4j.RollingFileAppenderlog4j.appender.dest1.maxFileSize = 900 ktlog4j.appender.dest1.maxBackupIndex = 6log4j.appender.dest1.layout = org.apache.log4j.PatternLayoutlog4j.appender.dest1.layout.ConversionPattern =% d {pp / kk / vvvv HH: kk: ss}% c% m% nlog4j.appender.dest1.File = D: \\ Guru99 \\ src \\ Manual.logslog4j.appender.dest1.Append = väärä
Edellä olevassa esimerkissä olemme määrittäneet log4j: n kirjautumaan sisään kahteen eri tiedostoon nimeltä Selenium.log ja Manual.log.
- tiedosto ja dest1 ovat kaksi tunnusta.
- "Tiedostoa" käytetään antamaan tiedostonimi, johon lokit tallennetaan
- "maxFileSize" -asetusta käytetään lokitiedoston enimmäiskoon määrittämiseen. Kun tiedosto saavuttaa tämän koon, uusi tiedosto luodaan samalla nimellä ja vanha tiedostonimi lisätään siihen hakemistona.
- "maxBackupIndex" -asetusta käytetään varmuuskopioitavien tiedostojen enimmäismäärän määrittämiseen.
- "layout" -asetusta käytetään lokitiedoston muodon asettamiseen.
- "Liitä" käytetään asettamaan lisäys-toiminto. Jos se on asetettu epätosi-arvoksi, lokitiedostoon käytetään joka kerta uusi tiedosto eikä vanhaa tiedostoa
Kuinka log4j: tä käytetään komentosarjassa?
Koodissa olemme käyttäneet logia referenssimuuttujana, joka viittaa Logger-luokan getLogger-menetelmään
Logger log = Logger.getLogger ("devpinoyLogger");
Kirjaa haluamasi tiedot käyttämällä "loki" -viitemuuttujaa ja virheenkorjausmenetelmää.
log.debug ("- tiedot--");
Mikä on LogExpert-työkalu?
- LogExpert-työkalu on Windows-työkalu, joka on kehitetty lokien räätälöimiseksi
- Se on ilmainen ja avoimen lähdekoodin lokien katseluohjelma.
- Se on lokianalyysityökalu, jolla on useita ominaisuuksia, kuten lokien haku, suodatus, kirjanmerkkien lisääminen ja korostaminen
- Tässä työkalulokissa tiedostot päivitetään automaattisesti, kun ne avataan
- Tässä työkalussa voimme avata useita lokitiedostoja eri välilehdillä
- Voimme myös kommentoida kirjanmerkkejä, ja siellä on pikanäppäin, jolla voit liikkua eri kirjanmerkkien välillä. Voimme myös nähdä täydellisen kirjanmerkkiluettelon ja navigoida sieltä
- Työkalun pikakuvakkeet annetaan ohjetiedostossa, jotta niihin voidaan viitata työkaluun.
Vaiheet Log4j: n käyttämiseksi seleenin kanssa
Vaihe 1) Luo Eclipse-ohjelmassa uusi projekti nimellä log4j_demo
Vaihe 2) Napsauta hiiren oikealla painikkeella src -> Build Path -> Configure Build Path
Vaihe 2) Napsauta Kirjastot ja Lisää Log4J-kirjasto. Voit ladata sen osoitteesta https://logging.apache.org/log4j/1.2/download.html
Vaihe 3) Luo uusi tiedosto. Tämä tiedosto sisältää kaikki log4j-määritykset
- Napsauta hiiren oikealla painikkeella src -> Uusi -> Muu -> Yleinen -> Tiedosto
- Anna tiedostonimi nimellä "log4j.properties"
- Napsauta Valmis
Luo vielä kaksi tiedostoa ja anna niille nimet, kuten Selenium.logs ja Manual.logs. Nämä tiedostot sisältävät kaikki järjestelmän luomat lokit ja manuaalisesti kirjatut lauseet
Vaihe 4) Kopioi log4j.propertiesissa koko kokoonpano.
Vaihe 5) Luo pääluokka:
- Napsauta hiiren kakkospainikkeella oletuspakettia -> Uusi -> Luokka
- Anna luokan nimi ja napsauta lopeta
Vaihe 6) Kopioi seuraava koodi pääluokkaan
tuo org.openqa.selenium.By;tuo org.openqa.selenium.WebDriver;tuo org.openqa.selenium.firefox.FirefoxDriver;tuo org.apache.log4j.Logger;public class LoggingDemo {/ *** @param väittää* /public staattinen void main (String [] argumentoi) {// TODO Automaattisesti luotu menetelmän tynkäWebDriver-ohjain = uusi FirefoxDriver ();Logger log = Logger.getLogger ("devpinoyLogger");driver.get ("http://healthunify.com/bmicalculator/");log.debug ("avaava webiste");driver.manage (). aikakatkaisut (). implisiittisesti Wait (20, TimeUnit.SECONDS);log.debug ("houkutteleva paino");driver.findElement (By.name ("wg")). sendKeys ("87");log.debug ("kilogrammien valitseminen");driver.findElement (By.name ("opt1")). sendKeys ("kilogramma");log.debug ("korkeuden valinta jalkoina");driver.findElement (By.name ("opt2")). sendKeys ("5");log.debug ("korkeuden valitseminen tuumina");driver.findElement (By.name ("opt3")). sendKeys ("10");log.debug ("Napsauta laskea");driver.findElement (By.name ("cc")). napsauta ();log.debug ("SIUnit-arvon saaminen");Merkkijono SIUnit = driver.findElement (By.name ("si")). GetAttribute ("value");log.debug ("USUnit-arvon saaminen");Merkkijono USUnit = driver.findElement (By.name ("me")). GetAttribute ("value");log.debug ("UKUnit-arvon saaminen");Merkkijono UKUnit = driver.findElement (By.name ("uk")). GetAttribute ("value");log.debug ("Yleiskuvauksen saaminen");Merkkijono = kuljettaja.findElement (By.name ("desc")). GetAttribute ("value");System.out.println ("SIUnit =" + SIUnit);System.out.println ("USUnit =" + USUnit);System.out.println ("UKUnit =" + UKUnit);System.out.println ("huomautus =" + huomautus);kuljettaja. lopeta ();}}
Yllä olevassa koodissa käymme osoitteessa http://healthunify.com/bmicalculator/ja vahvista BMI-laskin. Annettu paino on 87 kg ja korkeus 5 jalkaa 10 tuumaa. Skripti tarkistaa tuotoksen SE, USA ja Iso-Britannia yksiköissä.
Logger.getLoggerin ("devpinoyLogger") avulla luomme järjestelmätason lokit
Log.debug-menetelmällä tallennamme tiedot Manual.logiin
Vaihe 7) Suorita komentosarja. Tarkista lokitiedot avaamalla manuaalisten ja seleenilokien sijainti.
Kuinka LogExpert-työkalua voidaan käyttää lokien analysointiin
- Lataa työkalu osoitteesta http://logexpert.codeplex.com/. Siirry LogExpert-latauskansioon
- Avaa LogExpert.exe
- Napsauta Tiedosto -> Avaa ja selaa polulle, johon Manual.log- ja Selenium.log-tiedostot on tallennettu. Valitse tiedosto
- Valitse "Seuraa häntä" -vaihtoehto
Valitsemalla Seuraa häntä -vaihtoehto mahdollistaa lokien hakemisen, mikä tarkoittaa, että LogExpert päivittää lokitiedoston automaattisesti, kun komentosarja on suoritusvaiheessa. Jos käytämme jotain muuta editoria, kuten muistikirjaa, meidän on suljettava ja avattava tiedosto uudelleen ja uudelleen lokien päivittämiseksi. Mutta ExpertToolin ollessa Seuraa häntä -tilassa tätä ei vaadita.
Seuraavissa kuvissa näkyy lokien asettelu
LogExpert-työkalun avulla voidaan selvittää seleenin Webdriverin luomat lokit, kuten tässä työkalussa
- etsi tekstiä ja säännöllistä lauseketta,
- luo kirjanmerkki ja kommentoi niitä ja voi myös liikkua kirjanmerkkien välillä, mikä ei ole mahdollista missään muussa työkalussa,
- Suodata lokit ja etsi tekstialueita, ja voit myös käyttää toista suodatinta aiempiin suodatettuihin lokeihin,
- Korosta eri viiva tiettyjen sanojen perusteella.
Tämä työkalu auttaa myös jakamaan tiedot eri sarakkeisiin.