Nginx Log Analyzer

nginx-ի access-լոգերի CLI վերլուծիչ՝ հոսքային մշակում, սխալ ձևաչափի տողերի նկատմամբ կայունություն և հաշվետվություններ JSON, Markdown և AsciiDoc ձևաչափերով։

Ժամանակահատված
2025 թ․ հոկտեմբեր — 2026 թ․ հունիս
Կարգավիճակ
Ավարտված
Իմ դերը
Միակ մշակողը՝ լոգերի պարսերը, վիճակագրության ագրեգացումը, հաշվետվությունների ձևաչափերը, տիպավորումը և թեստերը։

Տեխնոլոգիաներ

  • Python
  • Docker

Հիմնական տեխնիկական որոշումները

  • Հոսքային ընթերցում՝ ֆայլն ամբողջությամբ հիշողության մեջ բեռնելու փոխարեն. ամբողջ լոգը RAM-ում պահելու կարիք չկա։
  • Սխալ ձևաչափով տողը բաց է թողնվում, այլ ոչ թե ընդհատում աշխատանքը, և հաշվարկը շարունակվում է մնացածով։
  • Աղբյուրը կարող է լինել լոկալ ֆայլ, glob-ձևանմուշ կամ URL։
  • Նույն ագրեգացված տվյալներն արտահանվում են երեք ձևաչափով. JSON՝ ավտոմատ մշակման համար, Markdown և AsciiDoc՝ ընթերցման համար։
  • Runtime-ում միայն Python-ի ստանդարտ գրադարանն է, արտաքին կախվածություններ չկան։
  • Խիստ տիպավորում՝ mypy-ով ստուգմամբ, մոդուլային թեստեր pytest-ով, լինտինգ, Docker և CI։

Հրամանային տողի գործիք, որը կարդում է nginx-ի access-լոգերը և դրանցից հավաքում վիճակագրություն՝ ամենահաճախ հարցվող ռեսուրսները, պատասխանների կոդերը, պատասխանի չափի պերցենտիլները և հարցումների բաշխումն ըստ ամսաթվերի։

nginx-ի լոգերը հեշտությամբ հասնում են գիգաբայթների, և հենց դա է թելադրում գործիքի պահանջները՝ ֆայլն ամբողջությամբ հիշողության մեջ չպահել և շարունակել մշակումը նույնիսկ այն դեպքում, երբ առանձին տողեր չեն համապատասխանում սպասվող ձևաչափին։