trafficserver日志系统配置指南.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
TrafficServer日志系统配置指南 淘仇恕(张云开) 最近更新:2013/09/12 一、TS日志系统简介 在中大规模的软件系统中,日志系统(logging system ),已经成为标配。Linux有syslog, Java有Log4j,Python有logging模块。日志系统的模型,已经非常成熟,大体如下图所示: 是日志系统里,允许配置多个日志对象(LogObject ),这些对象描述了日志的过滤规则 (filter)、格式(format)、以及日志的去向(target )。日志的输入(in put),是通过约定的 日志API,由应用程序调用这些 API完成输入。日志最终会输出(output)到磁盘或写入到网络 的另一台日志服务器上。 在 TrafficServer 中: 日志输入,由的TrafficServer的worker线程完成,这些线程会把 HTTP状态机的信息, 直接传递给日志系统的 API里。 日志API,由两个简洁的函数组成: Log::access() 访问日志,Log::error() 错误 日志。 日志对象,通过一个logs_xml.config 文件描述,这个文件通常位于:/etc/trafficserver/目 录下,文件内部对配置方法有详细的描述。 日志输出,由LogObject的target属性描述,但在具体的logs_xml.config 中,target属 性由 LogObject 的 File name 及 Collatio nH osts 描述。如果不存在 Collatio nH osts,则表 示输出到本地磁盘,否则输出到网络上的日志服务器。 在讲解TS的日志系统配置之前,需要先了解 TS日志系统的内部结构,包括它的线程模型、工 作流程。下图对其内部结构进行简要描述: 由上图可知,TS的日志系统,其线程包含: worker 线程,即日志的输入方,它会调用 Log::access()/Log::error() 日志API。在这些 API内部,会根据用户在logs_xml.config配置的LogObject对日志进行过滤。若满足了 过虑条件,则把该条日志写入到该 LogObject下的LogBuffer里。若LogBuffer已满,则 把它发送到预处理线程的 queue里,然后继续与下一个 LogObject的过虑条件进行匹 配,直到所有LogObject都匹配结束。 preproc 线程,即预处理线程,它负责做一些转换工作(例如,把 worker线程传递进来 的HTTP状态机,根据LogObject的format格式,转换成Ascii字符串,这部分转换工 作不是必需的,取决于LogObject配置的日志类型,若是二进制类型则不进行转换), 然后根据LogObject的target类型,把预处理后的数据发送到 flush队列或collation队 列。 flush线程,这部分线程只是简单地把 preproc线程传递过来的预处理过的内容,写到磁 盘上。 net线程,负责把preproc线程传递过来的、未经转换的 LogBuffer发送到远端的日志服 务器上(日志服务器在接收到 LogBuffer后,再经过它自己的预处理线程、flush线程, 最终写到磁盘上,也可以继续发送到其他日志服务器)。 有了前面的基础知识,下面开始介绍日志系统的配置参数。 二、TS日志系统配置指南 TS日志系统涉及到的参数还挺多的,并不是每个参数都需要关注。为了简明起见,先给出一份 适合咱们淘宝场景的配置单(未列出的选项,使用 TS的默认值): 日志客户端的配置 LOCAL proxy.local.log.collation_mode INT 0 CONFIG proxy.co nfig.log.max_space_mb_for_logs INT 2500 CONFIG proxy.c on fig.log.max_space_mb_for_orpha n」ogs INT 2500 CONFIG proxy.co nfig.log.max_space_mb_headroom INT 1000 CONFIG proxy.config.log.squid_log_enabled INT 0 CONFIG proxy.co nfig.log.log_buffer_size INT 262144 CONFIG proxy.co nfig.log.collation_max_se nd_buffers INT 1024 CONFIG proxy.co nfig.log.ascii_buffer_size INT 524288 〃log_buffer_size 两 倍 CONFIG proxy.c on fig.log

文档评论(0)

xiaozu + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档