Kas apache httpd access_logis on võimalik määrata tingimus, et need püsiksid ainult sellistes taotlustes, mille töötlemine võttis kauem kui 500 ms?

  • Ma olen segaduses. Kas proovite lihtsalt luua aeglaste päringute logi või üritate serverit ühenduse külge riputada, kui selle töötlemine võtab kaua aega? Kui viimane, siis võiksite otsida võrgutermini KeepAlive
  • Soovin saada loendi HTTP-päringutest, mis on oodatust pikem tööriist. Mul on seda vaja veebisaidi optimeerimise plaani koostamiseks.

The CustomLog direktiiv võimaldab teil määrata a seisund (valikulises 3. argumendis), mida kasutatakse päringu logimisel. (Apache 2.4+ puhul võib see toimuda Apache avaldise kujul.) Kuid see seisund põhineb tavaliselt päringu atribuudil (failitüüp, päringu päis jne), mitte millelgi, mis on seotud päringuga vastus. (Kuigi tundub, et HTTP-põhine tingimus on võimalik luua vastus staatus, kuna see tehakse selgesõnaliselt kättesaadavaks REQUEST_STATUS serveri muutuja.)

Kuid ma ei näe viisi, kuidas luua konditon põhinedes serveri reageerimisaeg. (?)

Lahendus võib olla selle teabe lisamine oma juurdepääsupäevikusse vormindusstringi abil %msT (kui soovite, et see logitakse millisekunditena) kohandatud logivormingus. Seejärel saate seda teavet logifailide analüsaatori abil filtreerida.

  • %T - Taotluse esitamiseks kulunud aeg sekundites.

  • %{UNIT}T - Taotluse kättetoimetamiseks kulunud aeg UNITi antud ajaühikus. Kehtivad ühikud on ms millisekundite jooksul, us mikrosekundite jaoks ja s sekunditeks. Kasutamine s annab sama tulemuse nagu %T ilma ühegi vorminguta; kasutades us annab sama tulemuse nagu %D. Kombineerimine %T üksusega on saadaval punktis 2.4.13 ja uuemates versioonides.

Viide:
http://httpd.apache.org/docs/current/mod/mod_log_config.html#formats

none: Charles Robertson | none