Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re^2: Extracting time from a log

by Azur (Initiate)
on Jun 28, 2013 at 18:14 UTC ( #1041310=note: print w/ replies, xml ) Need Help??


in reply to Re: Extracting time from a log
in thread Extracting time from a log

1) Yes, that output was just an example of the log format. There are several pages which take 2-3 seconds, but even changing 10.0 to 1 or 0 result in no output. 2)Thank you, I thought as much. However, the command doesn't work any better with the periods escaped:  varnishlog -o -i Backend,RxURL,ReqEnd,RxHeader | perl -ne 'BEGIN { $/= "";} print if (/ReqEnd(?:[\sc]+)\d+\s\d+\.\d+\s+\d+\.\d+\s+\d+\.\d+\s+(\d+\.\d+)/ and $1 > 1.0)'


Comment on Re^2: Extracting time from a log
Download Code
Re^3: Extracting time from a log
by Lawliet (Curate) on Jun 28, 2013 at 18:50 UTC
    but even changing 10.0 to 1 or 0 result in no output

    I beg to differ:

    $ echo " 11 SessionOpen c 123.234.56.78 63618 123.234.56.89:80 11 RxURL c /example.php 11 RxHeader c Host: 123.234.56.89 11 RxHeader c User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; r +v:22.0) Gecko/20100101 Firefox/22.0 11 RxHeader c Accept-Language: en-US,en;q=0.5 11 RxHeader c Accept-Encoding: gzip, deflate 11 ReqEnd c 1832330560 1372436083.710740089 1372436083.711302 +519 0.000174284 0.000352383 0.000210047" | perl -ne 'BEGIN { $/="";} +print if (/ReqEnd(?:[\sc]+)\d+\s\d+\.\d+\s+\d+\.\d+\s+\d+\.\d+\s+(\d+ +\.\d+)/ and $1 > 0)'

    Output:

    11 SessionOpen c 123.234.56.78 63618 123.234.56.89:80 11 RxURL c /example.php 11 RxHeader c Host: 123.234.56.89 11 RxHeader c User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; r +v:22.0) Gecko/20100101 Firefox/22.0 11 RxHeader c Accept-Language: en-US,en;q=0.5 11 RxHeader c Accept-Encoding: gzip, deflate 11 ReqEnd c 1832330560 1372436083.710740089 1372436083.711302 +519 0.000174284 0.000352383 0.000210047

    I changed the 10.0 to 0 and it outputted successfully. Perhaps you are overlooking something?

      Yes, clearly I must be, if you get output from that line, because I do not.

      I do get output if I enter...

      varnishlog -o -i Backend,RxURL,ReqEnd,RxHeader

      ...and when I enter...

      ls | perl -ne 'BEGIN { $/= "";} print'

      ...but not when I enter...

       varnishlog -o -i Backend,RxURL,ReqEnd,RxHeader | perl -ne 'BEGIN { $/= "";} print'

      So both parts of the command work individually, but not together!

      Any suggestions as to what I'm missing would be most welcome.

      EDIT: Solved it by redirecting the output to a textfile, then grepping the textfile. Still interested in finding out why the Perl command didn't work.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1041310]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (6)
As of 2014-07-26 07:58 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (175 votes), past polls