Re: radosgw log insanely verbose

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



According to  http://ceph.com/docs/master/rados/configuration/ceph-conf/#logs-debugging
there are in-memory logs.  How are those accessed?  I tried specifying
'debug rgw 0/20', but when an error occurs (such as "-1 Initialization
timeout, failed to initialize"), no additional verbosity is put in the
logs.  I thought I recall someone telling me it could be set up to
dump previous in-memory debug logs when an error is encountered, but
perhaps I misunderstood.

I ended up applying this small patch and setting 'debug rgw 0'.  It
seems like the token message shouldn't be a 0, and I wasn't sure what
to do about the add_child message which is quite verbose and always
going to stdout or stderr, so I just commented it out.

diff -U3 -r ceph-0.56.3.orig/src/rgw/rgw_json.cc ceph-0.56.3/src/rgw/rgw_json.cc
--- ceph-0.56.3.orig/src/rgw/rgw_json.cc	2013-02-13 09:21:37.000000000 -0800
+++ ceph-0.56.3/src/rgw/rgw_json.cc	2013-03-04 21:52:13.700028538 -0800
@@ -55,7 +55,7 @@

 void JSONObj::add_child(string el, JSONObj *obj)
 {
-  cout << "add_child: " << name << " <- " << el << std::endl;
+  //cout << "add_child: " << name << " <- " << el << std::endl;
   children.insert(pair<string, JSONObj *>(el, obj));
 }

diff -U3 -r ceph-0.56.3.orig/src/rgw/rgw_swift.cc
ceph-0.56.3/src/rgw/rgw_swift.cc
--- ceph-0.56.3.orig/src/rgw/rgw_swift.cc	2013-02-13 10:08:29.000000000 -0800
+++ ceph-0.56.3/src/rgw/rgw_swift.cc	2013-03-04 21:03:22.631018457 -0800
@@ -497,7 +497,7 @@
     return -EPERM;
   }

-  ldout(cct, 0) << "validated token: " << t.tenant_name << ":" <<
t.user_name << " expires: " << t.expiration << dendl;
+  ldout(cct, 1) << "validated token: " << t.tenant_name << ":" <<
t.user_name << " expires: " << t.expiration << dendl;

   rgw_set_keystone_token_auth_info(t, info);




On Mon, Mar 4, 2013 at 8:57 PM, Nick Bartos <nick@xxxxxxxxxxxxxxx> wrote:
> I did that, but I still get a good chunk of logs on every request:
>
> Mar  5 04:54:20 172.18.0.15 radosgw: 2013-03-05 04:54:20.279978
> 7f5017fef700  0 validated token: admin:admin expires: 1362541501
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.274411
> 7f91c67fc700  1 ====== starting new request req=0x7f920a157410 =====
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.274475
> 7f91c67fc700  2 req 2:0.000065::::initializing
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.274541
> 7f91c67fc700  2 req 2:0.000131:swift:GET /swift/v1::getting op
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.274545
> 7f91c67fc700  2 req 2:0.000135:swift:GET
> /swift/v1:list_buckets:authorizing
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.321919
> 7f91c67fc700  0 validated token: admin:admin expires: 1362541501
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.323542
> 7f91c67fc700  2 req 2:0.049131:swift:GET
> /swift/v1:list_buckets:reading permissions
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.323559
> 7f91c67fc700  2 req 2:0.049149:swift:GET
> /swift/v1:list_buckets:verifying op permissions
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.323561
> 7f91c67fc700  2 req 2:0.049151:swift:GET
> /swift/v1:list_buckets:verifying op params
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.323563
> 7f91c67fc700  2 req 2:0.049153:swift:GET
> /swift/v1:list_buckets:executing
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.325882
> 7f91c67fc700  2 req 2:0.051471:swift:GET /swift/v1:list_buckets:http
> status=200
> Mar  5 04:54:20 172.18.0.14 radosgw: 2013-03-05 04:54:20.326074
> 7f91c67fc700  1 ====== req done req=0x7f920a157410 http_status=200
> ======
> Mar  5 04:54:20 172.18.0.15 radosgw: 2013-03-05 04:54:20.391018
> 7f500f7de700  0 validated token: admin:admin expires: 1362541501
>
> even dropping it down to 0 leaves some successful request logs:
> Mar  5 04:55:11 172.18.0.13 radosgw: 2013-03-05 04:55:11.183432
> 7fc2c57fa700  0 validated token: admin:admin expires: 1362541501
> Mar  5 04:55:11 172.18.0.14 radosgw: 2013-03-05 04:55:11.271855
> 7fb477fff700  0 validated token: admin:admin expires: 1362541501
> Mar  5 04:55:11 172.18.0.14 radosgw: 2013-03-05 04:55:11.327159
> 7fb498cf6700  0 validated token: admin:admin expires: 1362541501
>
> which I suppose isn't so bad, but it would be great if it could be
> made to only log errors/warnings, and not things that are expected
> under normal operation (especially things that generate log entries on
> each successful request).
>
>
> On Mon, Mar 4, 2013 at 8:43 PM, Yehuda Sadeh <yehuda@xxxxxxxxxxx> wrote:
>> On Mon, Mar 4, 2013 at 8:16 PM, Nick Bartos <nick@xxxxxxxxxxxxxxx> wrote:
>>> I'm trying to figure out how to tone down the radosgw log messages,
>>> preferably just to warnings and errors.  Here's an excerpt from a
>>> simple bucket list from the openstack dashboard:
>>>
>>> https://gist.github.com/anonymous/aabe9886a7c236cc2321
>>>
>>> Note that the "radosgw.log" entries are generated from output on
>>> stderr of the radosgw process.  Radosgw is started via upstart with
>>> the command:  "setuidgid radosgw radosgw -c /etc/ceph/radosgw.conf -n
>>> client.radosgw.gateway -f"
>>>
>>> I was thinking that these were the ops and usage logs, but they are
>>> off by default in 0.56.3:
>>>
>>> OPTION(rgw_enable_ops_log, OPT_BOOL, false) // enable logging every
>>> rgw operation
>>> OPTION(rgw_enable_usage_log, OPT_BOOL, false) // enable logging bandwidth usage
>>>
>>> Maybe it has something to do with logging to syslog?  Here's the
>>> logging section of our ceph.conf:
>>>
>>> [global]
>>>     # Log only to syslog.
>>>     log file = ""
>>>     log to syslog = true
>>>     clog to monitors = false
>>>     clog to syslog = true
>>>     mon cluster log file = ""
>>>     mon cluster log to syslog = true
>>>     # Don't allow log output to get put on stderr of command line commands.
>>>     log to stderr = false
>>
>> add:
>> debug rgw = 2
>>
>> Yehuda
_______________________________________________
ceph-users mailing list
ceph-users@xxxxxxxxxxxxxx
http://lists.ceph.com/listinfo.cgi/ceph-users-ceph.com


[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux