Score:0

เป็นไปได้ไหมที่จะใส่คอลัมน์ในบันทึกการเข้าถึง / ข้อผิดพลาด nginx

ธง ml

ฉันเพิ่งเปิดใช้งาน ipv6 บนไซต์ของฉัน และแม้ว่าฉันจะไม่จำเป็นต้องดูไฟล์ access_log ด้วยตนเองบ่อยนัก ในโอกาสที่ฉันทำ ฉันรู้สึกตกใจมากที่บางครั้งคอลัมน์แรก (IP) ของฉันมีความยาว 7 อักขระ และบางครั้ง 39 ตัวอักษร

มีวิธีใดบ้างในการเติมคอลัมน์แรกให้มีความกว้าง (พูด) 39 อักขระเสมอ

ฉัน googled และดูเอกสาร nginx และไม่พบอะไรเลย แต่คิดว่าใครบางคนที่นี่อาจรู้เคล็ดลับ ...

ฉันคิดว่าถ้าไม่มีอะไรจะเป็นไปได้ด้วย แผนที่ อย่างใด แต่ฉันรู้แค่ว่าใช้ regexp กับสิ่งนั้นและไม่สามารถคิดวิธีเล่นกับความยาวหรือการเติมได้ ...

Score:0
ธง ml

ตกลง ตั้งแต่เขียนมา ฉันคิดวิธีแก้ปัญหาที่ดีที่สุด (อ่าน: เท่านั้น):

แผนที่ $remote_addr $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"; }

มันไม่สวยเหรอ?

ฉันถือว่าผลกระทบด้านประสิทธิภาพของสิ่งนี้มีน้อยมาก? ใช่ มันน่ากลัวและแฮ็คที่น่ากลัว แต่มันจะเป็น CPU ขั้นต่ำในการดำเนินการตามคำขอแต่ละครั้ง ฉันถือว่า... แต่ฉันได้เรียนรู้ว่าอย่าคิดไปเองเกี่ยวกับ nginx!

Sergey Serov avatar
de flag
น่าสนใจ! แต่สิ่งก่อสร้างใหญ่โตมักฟันธงว่าทางนี้ผิด ฉันคิดว่ามันจะดีกว่าถ้าเขียน bash-script (หรือภาษาที่สะดวกสบาย) ซึ่งจะแยกวิเคราะห์บันทึกในแบบที่คุณต้องการ

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา