memcached添加日志输出
引子:qa的memcached总是隔一段时间挂掉,导致qa进不去。决定查一下原因,于是添加日志输出,等下次出错便于查阅、定位问题。
memcache默认没有日志输出。如果想把memecache服务日志保存到日志文件中,需要在启动参数中进行配置。
安装memache后,可以通过-h来查看支持的参数,其中关于日志输出的有以下三个:
-v verbose (print errors/warnings while in event loop) #代表打印普通的错误或者警告类型的日志信息
-vv very verbose (also print client commands/reponses) #打印的日志更详细,除了错误和警告,还包含了客户端命令和server端的响应信息
-vvv extremely verbose (also print internal state transitions) #最详尽的,甚至包含了内部的状态信息打印
根据需要选择相应的参数即可,这里选择-vv。由于需要将日志保存到文件而不是打印在控制台上,所以需要对-vv的输出进行数据流重定向。
修改memecache的脚本为:
killall memcached ; memcached -d start -m -p -u root -vv >> /data/logs/mem.log.`date +%Y%m%d` 2>&1
标蓝部分是修改部分。
>> 追加形式写入日志文件中 (>表示覆盖)
/data/logs/mem.log.`date +%Y%m%d`为日志文件的名字。以年月日作为后缀来区分,无法进行日志切分(待研究和总结),只有重启的时候才会创建新的日志文件。
2>&1 将错误信息也一同写入日志文件中(详情参考 shell输入/输出重定向)
重启memcache, 相应目录便生成日志文件。
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
slab class : chunk size perslab
< server listening (auto-negotiate)
< server listening (auto-negotiate)
< send buffer was , now
< send buffer was , now
< server listening (udp)
< server listening (udp)
< server listening (udp)
< server listening (udp)
< server listening (udp)
< server listening (udp)
< server listening (udp)
< server listening (udp)
< new auto-negotiating client connection
: Client using the ascii protocol
< set facebook_req_usrconf.do__1383
> STORED
< new auto-negotiating client connection
< new auto-negotiating client connection
: Client using the ascii protocol
< set facebook_sess_383
> STORED
< get facebook_sess_383
> sending key facebook_sess_383
> END
: Client using the ascii protocol
< incr facebook_add_action_t_383_usrconf.do
> NOT_FOUND
< set facebook_add_action_t_383_usrconf.do
> STORED
< incr facebook_add_action_t2_383
> NOT_FOUND
< set facebook_decorate_expire_1487865600001383
> STORED
< get facebook_login_mark_time_of_current
> END
< get facebook_login_mark_time_of_current
> END
< delete facebook__avas1_383
memcached添加日志输出的更多相关文章
- APK反编译后添加日志
一.反编译 参考前一篇文章 二.添加寄存器(locals) 因为要添加日志,我们一般需要用一个变量来存储TAG,所以需要增加一个寄存器 如: # virtual methods .method pub ...
- springboot+logback日志输出企业实践(上)
目录 1.引言 2.logback简介 3. springboot默认日志框架-logback 3.1 springboot示例工程搭建 3.2 日志输出与基本配置 3.2.1 日志默认输出 3.2. ...
- Java学习-046-日志抓取合并后排序问题解决方案之 --- log4j 二次定制,实现日志输出添加延时10ms
自3月25至今,已经好久没有写学习日志了,今天在写日志抓取合并的小方法,发现抓取后的日志并米有依据系统执行的日志顺序排序.日志抓取排列逻辑如下: 通过日志标识,从各个日志文件(例如 use.log,e ...
- Python之向日志输出中添加上下文信息
除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如:远程客户端的IP地址和用户名.这里我们 ...
- 【转】Python之向日志输出中添加上下文信息
[转]Python之向日志输出中添加上下文信息 除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定 ...
- Python 日志输出中添加上下文信息
Python日志输出中添加上下文信息 除了传递给日志记录函数的参数(如msg)外,有时候我们还想在日志输出中包含一些额外的上下文信息.比如,在一个网络应用中,可能希望在日志中记录客户端的特定信息,如: ...
- Xcode 8 日志输出乱码问题
更新到Xcode 8的同学应该都遇到了这个问题:用Xcode 8运行项目,日志会疯狂的刷,就像下面这种图一样:
- Haproxy安装配置及日志输出问题
简介: 软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现.LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载 ...
- Python日志输出——logging模块
Python日志输出——logging模块 标签: loggingpythonimportmodulelog4j 2012-03-06 00:18 31605人阅读 评论(8) 收藏 举报 分类: P ...
随机推荐
- elk系列4之kibana图形化操作【转】
preface 我们都搭建了ELK系统,且日志也能够正常收集的时候,那么就配置下kibana.我们可以通过kibana配置柱状图,趋势图,统计图,圆饼图等等各类图.下面就拿配置统计图和柱状图为例,结合 ...
- selenium启动chrome模拟器模拟手机
一.如果chrome选项里边有这个模拟设备(比如iPhone 6 Plus): 1.先启动Selenium Grid, 比如命令:java -jar selenium-server-standalon ...
- FusionCharts 用法心得
现在主流的很多jQuery+js结合的图表展示插件,有HighCharts,ECharts等等,今天我们先来了解一下FusionCharts,也是一个非常不错的图表制作工具.希望我的同事以及其他需要帮 ...
- 一致性hash理解
在做memcached分布式集群时往往要用到一致性hash算法来调节缓存数据的分布. 通常的hash算法是以服务器数量N作为模数,使用key%N的值来获得最终位置,显然当服务器数量发生变化即N发生变化 ...
- 【摘要】JavaScript 的性能优化:加载和执行
1.浏览器遇到js代码会暂停页面的下载和渲染,谁晓得js代码会不会把html给强奸(改变)了: 2.延迟脚本加载:defer 属性 <html> <head> <titl ...
- Bootstrap开发模板
<!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...
- django的orm中F对象的使用
今天不巧就用上了. 就是将数据库的字段,自增1的场景. from django.db.models import F DeployPool.objects.filter(name=deployvers ...
- linux中忘记root密码解决方案
方法一: 如果用户具有sudo权限,那么直接可以运行如下命令: #sudo su root #passwd #更改密码 或者直接运行sudo passwd root命令就可以直接更改root密码. 有 ...
- 【51nod】1594 Gcd and Phi
题解 跟随小迪学姐的步伐,学习一下数论 小迪学姐太巨了! 这道题的式子很好推嘛 \(\sum_{i = 1}^{n} \sum_{j = 1}^{n} \sum_{d|\phi(i),\phi(j)} ...
- HTML5 Canvas 初探
仅仅只是一个简单的hello world. js代码很简单: <!DOCTYPE HTML> <html lang="cn"> <head> & ...