How can I fetch byte logs in nginx like "%{%s}t %I .\n%{%s}t %O ."

In Apache I fetch byte logs using:

CustomLog /usr/local/apache/logs/DOMAIN.COM-bytes_log “%{%s}t %I
.\n%{%s}t %O .”

Can I achieve the similar effect this does in Apache, in nginx ?

If so, can anyone give me the proper syntax to do so in nginx config?

Joe

to save us lazy people some time can you define what each of these is?

basically the outcome of the byte-log files would be:

1226686775 238 .
1226686776 527 .
1226686776 5270 .
1226686776 448 .
1226686776 5455 .
1226686777 391 .
1226686777 5274 .
1226686777 549 .
1226686777 196 .
1226686777 456 .
1226686777 197 .
1226686777 154 .
1226686777 5455 .
1226686896 66 .
1226686896 251 .
1226686896 284 .
1226686896 1949 .

Timestamp and bytes?

log_format byteslog ‘$time_local $bytes_sent’;

access_log /var/log/nginx/DOMAIN.COM-bytes_log byteslog;

$time_local is this syntax “14/Nov/2008:10:27:48 -0800”

I am not sure there is a timestamp variable. You could look at
$msec, the time with an accuracy to microseconds at the moment of the
log entry

This has some of the variables:
http://wiki.codemongers.com/NginxHttpLogModule

You can also use any of these:
$query_string
$request_method
$content_type
$content_length
$fastcgi_script_name
$request_uri
$document_uri
$document_root
$server_protocol
$remote_addr
$remote_port
$server_addr
$server_port
$http_host
$server_name

Not sure what other ones are out there too.

On Friday, November 14, 2008 at 19:58:56, Joe S. wrote:

JS> In Apache I fetch byte logs using:
JS> CustomLog /usr/local/apache/logs/DOMAIN.COM-bytes_log “%{%s}t %I
.\n%{%s}t %O .”
JS> Can I achieve the similar effect this does in Apache, in nginx ?
JS> If so, can anyone give me the proper syntax to do so in nginx
config?

http://wiki.codemongers.com/NginxHttpLogModule

I am trying to convert Apache to nginx in a box I have, but I want to
use the tools already this control panel uses, so I try to make sure
there is no interference , and smooth, if this is successful, this
would be very sweet.

There is no way to cut down the format so its in like 1226686777 form
? would there be future implementation for bytes received ?

Joe

On Fri, Nov 14, 2008 at 12:22:31PM -0600, Joe S. wrote:

1226686777 196 .
1226686777 456 .
1226686777 197 .
1226686777 154 .
1226686777 5455 .
1226686896 66 .
1226686896 251 .
1226686896 284 .
1226686896 1949 .

The near approximation is

log_format bytes “$msec - .\n$msec $bytes_sent .”;

but time will be in 1226686777.123 form and there will be no “bytes
received”.

BTW, how do you distinguish input lines from output ones in the log ?

On Fri, Nov 14, 2008 at 12:59 PM, Joe S. [email protected] wrote:

There is no way to cut down the format so its in like 1226686777 form
? would there be future implementation for bytes received ?

This is one thing I wanted too - a way to capture -all- traffic. Large
file uploads add up.