A naplózó könyvtár használata a Rubin egy egyszerű módja annak, hogy nyomon tudja követni, amikor valami baj van a kóddal. Ha valami rosszul fordul elő, akkor a pontos hibaelhárítás pontos ismertetése órákat takaríthat meg a hibakeresés során. Mivel a programok egyre nagyobb és összetettebbek lehetnek, érdemes felvenni a módját a naplóüzenetek írására. A Ruby számos hasznos eszközzel rendelkezik osztályok és a standard könyvtárnak nevezett könyvtárak. Ezek között van a naplózó könyvtár, amely prioritást élvez és elforgatott naplózást biztosít.
Alapvető használat
Mivel a naplózó könyvtár Ruby-val érkezik, nincs szükség drágakövek vagy más könyvtárak telepítésére. A naplózó könyvtár használatának megkezdéséhez egyszerűen kíván 'naplózó', és hozzon létre egy új naplózó objektumot. A naplózó objektumra írt üzenetek a naplófájlba kerülnek.
#! / usr / bin / env rubin
„logger” megkövetelése
log = Logger.new ('log.txt')
log.debug "A naplófájl létrehozva"
prioritások
Minden naplóüzenet prioritással rendelkezik. Ezek a prioritások megkönnyítik a naplófájlokban a komoly üzenetek keresését, valamint lehetővé teszik, hogy a naplózási objektum automatikusan kiszűrje a kisebb üzeneteket, amikor nincs rá szükség. Gondolkodhat úgy, mint például a napi teendők listája. Néhány dolgot feltétlenül meg kell tenni, néhány dolgot valóban meg kell tenni, és néhány dolgot el lehet halasztani, amíg nincs ideje megtenni.
Az előző példában a prioritás volt hibakeresés, az összes prioritás közül a legkevésbé fontos (ha szükséges, a teendők listájának „halasztani addig, amíg nincs időd”). A naplóüzenet prioritása, a legkevésbé a legfontosabbhoz sorolva, a következő: hibakeresés, információ, figyelmeztetés, hiba, és végzetes. Az üzenet szintjének beállításához a naplózónak figyelmen kívül kell hagynia a szint tulajdonság.
#! / usr / bin / env rubin
„logger” megkövetelése
log = Logger.new ('log.txt')
log.level = Naplózó:: WARN
log.debug "Ezt figyelmen kívül hagyjuk"
log.error "Ezt nem hagyják figyelmen kívül"
Készíthet annyi naplóüzenetet, amennyit csak akar, és naplózhat minden apró apróságot, amit a program tesz, ami rendkívül hasznosá teszi a prioritásokat. A program futtatásakor a naplózó szintjére hagyhat valamit, például figyelmeztetést vagy hibát, hogy elkapja a fontos dolgokat. Ezután, ha valami rosszul fordul, csökkentheti a naplózási szintet (akár a forráskódban, akár egy parancssori kapcsolóval), hogy további információkat kapjon.
Forgás
A naplózó könyvtár támogatja a naplóforgatást is. A naplóforgatás megakadályozza, hogy a naplók túl nagyok legyenek, és elősegíti a régebbi naplókban történő keresést. Ha a naplóforgatás engedélyezve van, és a napló elér egy bizonyos méretet vagy egy bizonyos korot, a naplózó könyvtár átnevezi a fájlt, és új naplófájlt hoz létre. A régebbi naplófájlokat úgy is konfigurálhatjuk, hogy egy adott életkor után töröljék őket (vagy "csökkenjenek az elforgatásból").
A naplóforgatás engedélyezéséhez továbbítsa a „havonta”, „hetente” vagy „naponta” a Logger konstruktornak. Opcionálisan átadhatja a maximális fájlméretet és a fájlok számát, hogy folyamatosan forogjon a konstruktornak.
#! / usr / bin / env rubin
„logger” megkövetelése
log = Logger.new ('log.txt', 'napi')
log.debug "Amint a napló legalább egyévé válik"
log.debug "napos, akkor átnevezik és egy"
log.debug "új log.txt fájl jön létre."