修改records.config,开启日志自定义功能
更改日志目录,默认日志存放在/var/log/trafficserver:
CONFIG proxy.config.log.logfile_dir STRING /var/log/trafficserver
更改默认日志的输出格​​式,按照ASCII码输出日志
CONFIG proxy.config.log.squid_log_is_ascii INT 1 关闭squid格式的日志输出
CONFIG proxy.config.log.squid_log_enabled INT 0
修改records.config,开启日志自定义功能 CONFIG proxy.config.log.custom_logs_enabled INT 1
 
修改logs_xml.config
<LogFormat>
<Name = “access”/>
<Format = “%<chi> %<cqtq> %<ttms> %<{X-Forwarded-For}cqh> %<crc>/%<pssc> %<pscl> %<cqhm> %<cquuc> %<cqhv> %<phr>/%<pqsi> %<psct> \”%<{Referer}cqh>\” \”%<{User-Agent}cqh>\” %<shn> %<sscl>”/>
</LogFormat>
 
<LogObject>
<Format = “access”/>
<Filename = “access”/>
</LogObject>
 
输出结果:
10.0.5.153 1543562823.049 0 – TCP_MEM_HIT/200 28 GET http://www.a.com/1.txt HTTP/1.0 NONE/0 text/plain “-” “Wget/1.12 (linux-gnu)” www.a.com 0
 
日志轮询
使用traffic server内部的轮询机制来处理,线上的配置如下:
CONFIG proxy.config.log.logging_enabled INT 3 CONFIG proxy.config.log.max_secs_per_buffer INT 5 CONFIG proxy.config.log.max_space_mb_for_logs INT 60000 CONFIG proxy.config.log.max_space_mb_for_orphan_logs INT 25 CONFIG proxy.config.log.max_space_mb_headroom INT 5000 CONFIG proxy.config.log.rolling_enabled INT 3 CONFIG proxy.config.log.rolling_interval_sec INT 86400 CONFIG proxy.config.log.rolling_offset_hr INT 0 CONFIG proxy.config.log.rolling_size_mb INT 1024 CONFIG proxy.config.log.auto_delete_rolled_files INT 1
 
这里简单的解释下logs_xml.config这个文件的组成,主要由LogFormats/LogFilters/LogObject定义块组成,每一块的含义如下:
LogFormat : object defines the content of the log file using printf-style format strings (看到 printf-style,就猜的出来,说的是按照一种什么风格输出日志,例如日志字段间的分隔用的是逗号分隔还是空格分隔了)
LogFilter :object defines a filter so that you include or exclude certain information from the log file (看到Filter也知道,这个部分是做过滤的,确定最后要输出什么样的信息到日志,例如可以只输出某一个域名的日志或者只输出状态码等于200的日志等等)
LogObject :object specifies all the information needed to produce a log file (这是一个总的定义块,相当于c语言最后的main函数,例如你要自定义输出一个日志,首先要定义一个LogObject,然后里面再包括LogFormat/LogFilter等其他部分;LogObject里,至少要包括Format(决定日志如何输出)和Filename(日志输出到哪)这两个部分。)

ATS配置自定义日志的更多相关文章

  1. Nginx 核心配置-自定义日志路径及清空日志注意事项

    Nginx 核心配置-自定义日志路径及清空日志注意事项 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.关于日志清空注意事项 1>.nginx服务写访问日志是基于acces ...

  2. Django中配置自定义日志系统

  3. ASP.NET全局错误处理和异常日志记录以及IIS配置自定义错误页面

    应用场景和使用目的 很多时候,我们在访问页面的时候,由于程序异常.系统崩溃会导致出现黄页.在通常的情况下,黄页对于我们来说,帮助是极大的,因为它可以帮助我们知道问题根源,甚至是哪一行代码出现了错误.但 ...

  4. Nginx 高级配置-自定义json格式日志

    Nginx 高级配置-自定义json格式日志 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在大数据运维工作中,我们经常会使用flume,filebeat相关日志收集工具取收集日志 ...

  5. springboot2.7.x 集成log4j2配置写入日志到mysql自定义表格

    在阅读之前请先查看[springboot集成log4j2] 本文暂不考虑抽象等实现方式,只限于展示如何自定义配置log4j2并写入mysql数据库(自定义结构) 先看下log4j2的配置 <?x ...

  6. log4j分离日志输出 自定义过滤 自定义日志文件

    普通的log4j.properties 定义: ### set log levels ### log4j.rootLogger = debug,D,E ## Disable other log log ...

  7. c#自定义日志记录

    废话不多说,直接上代码: 很简单:将类复制到项目中,最后在配置文件上配置一下:logUrl即可. 默认保存在:项目/temp/log /// <summary> /// 日志类 /// & ...

  8. YII2 自定义日志路径

    YII 提供的日志写入方法: 1.Yii::getLogger()->log($message, $level, $category = 'application') 2.Yii::trace( ...

  9. Java自定义日志输出文件

    Java自定义日志输出文件 日志的打印,在程序中是必不可少的,如果需要将不同的日志打印到不同的地方,则需要定义不同的Appender,然后定义每一个Appender的日志级别.打印形式和日志的输出路径 ...

随机推荐

  1. kolla-ansible源码分析

    一.kolla-ansible 源码的目录结构 kolla-ansible是从kolla项目分离出来的一个可交付的项目,kolla-ansible负责部署容器化的openstack各个服务和基础设施组 ...

  2. java中main函数的String[] args

    写java程序时main函数必须有一个字符串数组即String[] args 作用:用来获取用户从命令行输入的参数 如果main函数中不写字符串数组,则将会报错

  3. php \r\n

    代码a: 复制代码 代码如下: <?php echo'hello</br>'; echo'world!'; ?> output: helllo world! 代码b: 复制代码 ...

  4. 使用maven-shade-plugin打包spring项目为可执行的jar包

    使用maven-shade-plugin打包spring项目为可执行的jar包,打包后的jar包里面包含依赖的jar包. POM文件: <plugin> <groupId>or ...

  5. OpenCV中的图像插值示例

    本文地址:http://www.cnblogs.com/QingHuan/p/7384433.html,转载请注明出处 ======================================== ...

  6. java内部类及四种内部类的实现方式

     java内部类及四种内部类的实现方式 一.内部类定义:内部类分为: 成员内部类.静态嵌套类.方法内部类.匿名内部类. 二.为何要内部类?a.内部类提供了某种进入外围类的窗户.b.也是最吸引人的原因, ...

  7. Python全栈之路----流程控制+循环

    (一)流程控制 1.单分支结构    if  条件: 满足条件后要执行的代码 2.双分支结构: if  条件: 满足条件后要执行的代码 else : if 不满足就执行这个代码 3.多分支结构:if ...

  8. linux基础之用户登录信息查看命令

    用户登录信息查看命令 1.who命令 同一个账号通过不同终端登录也属于不同的登录信息,这里不同的终端包含虚拟终端和模拟终端,因为一个用户通过一个终端登录属于一个session 基本介绍 打印当前系统上 ...

  9. day04列表

    列表 内容详细 1.列表 公共 独有方法 删除 remove pop clear del区别 强制转换 #表示多个事物 users=["lili","Joe", ...

  10. java-Set集合、HashSet集合、LinkedHashSet集合和TreeSet集合

    1.Set集合,无索引,不可以重复,无序(存取不一致) public class Demo { public static void main(String[] args) { //demo1(); ...