Puncte:0

Este posibil să adăugați coloane în jurnalele de acces/erori nginx?

drapel ml

Am activat recent ipv6 pe site-ul meu și, deși nu am adesea nevoie să mă uit manual la un fișier access_log, cu ocazia asta, acum este foarte supărător faptul că prima mea coloană (IP) are uneori 7 caractere. și uneori 39 de caractere.

Există vreo modalitate de a completa prima coloană să aibă întotdeauna (să zicem) 39 de caractere lățime?

Am căutat pe google și m-am uitat la documentele nginx și nu am găsit nimic, dar m-am gândit că cineva de aici ar putea ști un truc...

Presupun că dacă nimic altceva nu va fi posibil Hartă cumva, dar știu doar să folosesc expresia regulată cu asta și nu mă gândesc la o modalitate de a juca cu lungimea sau umplutura...

Puncte:0
drapel ml

OK, de când am scris-o, am venit cu cea mai bună soluție (citiți: numai):

harta $adresă_la distanță $padded_ip { "~^(.{39})" "$1";
                              „~^(.{38})” „$1”;
                              „~^(.{37})” „$1”;
                              „~^(.{36})” „$1”;
                              „~^(.{35})” „$1”;
                              „~^(.{34})” „$1”;
                              „~^(.{33})” „$1”;
                              „~^(.{32})” „$1”;
                              „~^(.{31})” „$1”;
                              „~^(.{30})” „$1”;
                              „~^(.{29})” „$1”;
                              „~^(.{28})” „$1”;
                              „~^(.{27})” „$1”;
                              „~^(.{26})” „$1”;
                              „~^(.{25})” „$1”;
                              „~^(.{24})” „$1”;
                              „~^(.{23})” „$1”;
                              „~^(.{22})” „$1”;
                              „~^(.{21})” „$1”;
                              „~^(.{20})” „$1”;
                              „~^(.{19})” „$1”;
                              „~^(.{18})” „$1”;
                              „~^(.{17})” „$1”;
                              „~^(.{16})” „$1”;
                              „~^(.{15})” „$1”;
                              „~^(.{14})” „$1”;
                              „~^(.{13})” „$1”;
                              „~^(.{12})” „$1”;
                              „~^(.{11})” „$1”;
                              „~^(.{10})” „$1”;
                              „~^(.{9})” „$1”;
                              „~^(.{8})” „$1”;
                              „~^(.{7})” „$1”; }

Nu e frumos?

Presupun că impactul asupra performanței este minim? Da, este hidos și un hack oribil, dar va fi un CPU minim pentru a executa asta la fiecare cerere, presupun... dar am învățat să nu presupun niciodată nimic despre nginx!

Sergey Serov avatar
drapel de
Interesant! Dar o construcție atât de uriașă, de obicei, un steag, încât în ​​acest fel este greșit. Presupun că va fi mai bine să scrieți bash-script (sau orice limbă confortabilă) care va fi parse log în modul în care doriți.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.