openTSDB日志配置

opentsdb性能优化参数以及推荐配置参数 阅读详情

 

openTSDB启动之后,发现在日志目录下只生成了日志空文件,并没有写入日志内容。查看日志配置文件logback.xml如下:

复制代码

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <!--<jmxConfigurator/>-->
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>
        %d{ISO8601} %-5level [%thread] %logger{0}: %msg%n
      </pattern>
    </encoder>
  </appender>
  
  <!-- This appender is responsible for the /logs endpoint. It maintains MaxSize 
       lines of the log file in memory. If you don't need the endpoint, disable
       this appender (by removing the line "<appender-ref ref="CYCLIC"/>" in
       the "root" section below) to save some cycles and memory. -->
  <appender name="CYCLIC" class="ch.qos.logback.core.read.CyclicBufferAppender">
    <MaxSize>1024</MaxSize>
  </appender>
  
  <!-- Appender to write OpenTSDB data to a set of rotating log files -->
  <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
      <file>/var/log/opentsdb/opentsdb.log</file>
      <append>true</append>
      <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
         <fileNamePattern>/home/y/logs/opentsdb2/opentsdb.log.%i</fileNamePattern>
         <minIndex>1</minIndex>
         <maxIndex>4</maxIndex>
      </rollingPolicy>
      <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
         <maxFileSize>512MB</maxFileSize>
      </triggeringPolicy>
      <!-- encoders are assigned the type
       ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
      <encoder>
         <pattern>%date{ISO8601} [%thread] %-5level [%logger{0}.%M] - %msg%n</pattern>
      </encoder>
   </appender>
  
  <!-- Appender for writing full and completed queries to a log file. To use it, make
       sure to set the "level" to "INFO" in QueryLog below. -->
  <appender name="QUERY_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>/var/log/opentsdb/queries.log</file>
    <append>true</append>

    <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <fileNamePattern>/var/log/opentsdb/queries.log.%i</fileNamePattern>
        <minIndex>1</minIndex>
        <maxIndex>4</maxIndex>
    </rollingPolicy>

    <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <maxFileSize>128MB</maxFileSize>
    </triggeringPolicy>
    <encoder>
        <pattern>%date{ISO8601} [%logger.%M] %msg%n</pattern>
    </encoder>
  </appender>
  
  <!-- Per class logger levels -->
  <logger name="QueryLog" level="INFO" additivity="false">
    <appender-ref ref="QUERY_LOG"/>
  </logger>
  <logger name="org.apache.zookeeper" level="INFO"/>
  <logger name="org.hbase.async" level="INFO"/>
  <logger name="com.stumbleupon.async" level="INFO"/>
  
  <!-- Fallthrough root logger and router -->
  <root level="INFO">
    <appender-ref ref="STDOUT"/>
    <appender-ref ref="CYCLIC"/>
    <!-- Uncomment to log to file -->
    <!--<appender-ref ref="FILE"/>-->
  </root>
</configuration>

复制代码

<appender-ref ref="FILE"/> 默认被注释掉,导致日志内容不会像文件中输出。取消此处注释,opentsdb.log文件中会有日志输出。但此处配置的日志并不是按日期每天生成的,不方便查找日志。修改为如下:

复制代码

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
    <property name="LOG_HOME" value="/data/logs/opentsdb"/>

  <!--<jmxConfigurator/>-->
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>
        <!--%d{ISO8601} %-5level [%thread] %logger{0}: %msg%n-->
        [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger{0} - %msg%n
      </pattern>
    </encoder>
  </appender>
  
  <!-- This appender is responsible for the /logs endpoint. It maintains MaxSize 
       lines of the log file in memory. If you don't need the endpoint, disable
       this appender (by removing the line "<appender-ref ref="CYCLIC"/>" in
       the "root" section below) to save some cycles and memory. -->
  <appender name="CYCLIC" class="ch.qos.logback.core.read.CyclicBufferAppender">
    <MaxSize>1024</MaxSize>
  </appender>
  
  <!-- Appender to write OpenTSDB data to a set of rotating log files -->
  <!--<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
      <file>${LOG_HOME}/opentsdb.log</file>
      <append>true</append>
      <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
         <fileNamePattern>${LOG_HOME}/opentsdb.log.%i</fileNamePattern>
         <minIndex>1</minIndex>
         <maxIndex>4</maxIndex>
      </rollingPolicy>
      <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
         <maxFileSize>100MB</maxFileSize>
      </triggeringPolicy>
      &lt;!&ndash; encoders are assigned the type
       ch.qos.logback.classic.encoder.PatternLayoutEncoder by default &ndash;&gt;
      <encoder>
         <pattern>%date{ISO8601} [%thread] %-5level [%logger{0}.%M] - %msg%n</pattern>
      </encoder>
   </appender>-->
    <!-- 修改为TimeBasedRollingPolicy,按日期产生日志文件-->
    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!--<Encoding>UTF-8</Encoding>-->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!--日志文件输出的文件名-->
            <FileNamePattern>${LOG_HOME}/opentsdb.%d{yyyy-MM-dd}_%i.info.log</FileNamePattern>
            <!--日志文件保留天数-->
            <MaxHistory>180</MaxHistory>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>100MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>
        <encoder>
            <pattern>[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %logger{0} - %msg%n</pattern>
        </encoder>
    </appender>


  <!-- Appender for writing full and completed queries to a log file. To use it, make
       sure to set the "level" to "INFO" in QueryLog below. -->
    <appender name="QUERY_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${LOG_HOME}/queries.log</file>
        <append>true</append>

        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${LOG_HOME}/queries.log.%i</fileNamePattern>
            <minIndex>1</minIndex>
            <maxIndex>4</maxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>128MB</maxFileSize>
        </triggeringPolicy>
        <encoder>
            <pattern>%date{ISO8601} [%logger.%M] %msg%n</pattern>
        </encoder>
    </appender>
  
  <!-- Per class logger levels -->
  <logger name="QueryLog" level="INFO" additivity="false">
    <appender-ref ref="QUERY_LOG"/>
  </logger>
  <logger name="org.apache.zookeeper" level="INFO"/>
  <logger name="org.hbase.async" level="INFO"/>
  <logger name="com.stumbleupon.async" level="INFO"/>
  
  <!-- Fallthrough root logger and router -->
  <root level="INFO">
    <appender-ref ref="STDOUT"/>
    <appender-ref ref="CYCLIC"/>
    <!-- Uncomment to log to file -->
    <appender-ref ref="FILE"/>
    <!--<appender-ref ref="QUERY_LOG"/>-->
  </root>
</configuration>

复制代码

按日期产生日志文件,每个文件大小100M,保留180天的日志文件。 

queries.log中输出内容和opentsdb.log重复,<!--<appender-ref ref="QUERY_LOG"/>-->  QUERY_LOG内容不再向文件中输出(格式也未修改)。

 

 

 

 

 

分类: openTSDB

标签: openTSDB, logback, 日志配置

好文要顶 关注我 收藏该文  

huonan
关注 - 4
粉丝 - 2

+加关注

0

0

« 上一篇:分布式任务elastic-job

opentsdb踩过的坑.txt opentsdb踩坑记录: 1. Int 类型溢出问题 2. tagv超出了最大值 3.不要在compaction时重启OpenTSDB服务 4. 分配UID时行锁问题,导致分配性能很低 立即下载

相关推荐

Opentsdb踩过的坑

Opentsdb踩过的坑,亲自参与,并且修改过opentsdb的源码,希望对使用过的人有些帮助!

如何根据日志大小计算日志条数

举个例子,我们一个日志文件如果有33M,那么大概估算下它有多少条日志。 一般日志我们按照英文来算,一个字母1个字节,一个汉字3个字节,我们不算汉字。就是一个字节。一条日志我们按照200个字节来算。 1024个字节等于1kb,1024kb等于1m,所以我们需要先用33m * 1024 * 1024, 所以大概的日志条数为 33* 1024 * 1024 / 200 = 173015,也就是17万条的日志。这样就算出来了。 反之根据流量计算容量数量也可以通过这个公示计算。 ...

风烟 5303

三菱 FX5U PLC 4轴程序 控制松下伺服3个, 步进电机一个

三菱 FX5U PLC 4轴程序。 控制松下伺服3个, 步进电机一个, 四轴自动堆垛码垛设备程序, 回原点动作用专用的原点回归指令写的, 手动运行用三菱相对定位指令写的 , 自动运行用绝对定位指令写的取料运行, 表格定位写的自动放料运行, 设备各种报警异常都有写出 程序每一步都有注释。 包括PLC程序、显控触摸屏 程序、松下伺服驱动器接线图。 程序内都有IO注释 编号:4816635519484681汇美0808 ...

m0_68069172的博客 3382

OpenTSDB的存储层优化:提升存储性能的方法

作者:禅与计算机程序设计艺术 《OpenTSDB的存储层优化:提升存储性能的方法》 引言 1.1. 背景介绍 随着大数据时代的到来,分布式存储系统在存储海量数据的同时,需要提供高可用、高性能的数

AI天才研究院 6255

RaiDrive+AList保姆级教程:5分钟搞定OneDrive/百度网盘挂载到本地(附WebDAV配置)

本文提供RaiDrive+AList的保姆级教程,5分钟内实现将OneDrive/百度网盘挂载到本地的详细步骤,包括WebDAV配置。通过AList统一转换云存储协议,RaiDrive虚拟磁盘挂载,显著提升多网盘管理效率,适合需要跨平台操作文件的用户。

weixin_28331555的博客 458

【hadoop编译报错】(yarn install) on project hadoop-yarn-applications-catalog-webapp Failed to run task

ambari+bigtop自定义组件集成

TTBIGDATA的博客 1804

Operator SIMPLE_PROPERTY on rid requires a scalar argument, found interface java.util.List in method

大家好,我是「奇点」,江湖人称 singularity。喜欢java和python,平时比较懒,能用程序解决的坚决不手动解决😜😜😜。解决方法是在批量查询的时候批量的字段后面加一个In就好了。✨ 如果有对【java】感兴趣的【小可爱】,欢迎关注我。

奇点 631

processing与arduino互动编程

Arduino开发板对AVR单片机二次编译封装,无需考虑单片机编程寄存器、地址指针等复杂细节processing借助arduino读取各种传感器的数值,控制各种机电装置。

weixin_45679408的博客 825

openTSDB查看日志

openTSDB查看日志 1.问题 openTSDB程序运行的日志在哪里呢? 今天发现自己的windows磁盘一直飙高100%,仔细定位之后,猜测是虚拟机中运行的openTSDB出现了问题,于是想查找openTSDB的运行日志,但却一直没有找到。 2.原因 定位问题的过程如下: 搜索openTSDB安装目录下的日志文件 [root@server4 opentsdb-2.3.0]# find ....

说文科技,做有态度的研究。 2321

伺服电机三环控制实战:从参数整定到系统优化

本文以实战视角,深入解析伺服电机三环控制(位置环、速度环、电流环)的参数整定与系统优化全流程。文章摒弃复杂理论,通过生动的比喻和分步调试指南,详细阐述了从电流环快速响应、速度环平滑调节到位置环精准定位的调试方法,并提供了常见问题排查与进阶优化技巧,帮助工程师有效提升伺服系统性能与稳定性。

weixin_29201933的博客 246

机器学习的低代码与无代码平台:便捷入门之路

机器学习领域正涌现出大量低代码和无代码平台,使非技术人员也能轻松应用AI技术。低代码平台(如PyCaret、H2O AutoML)需少量编程但灵活性强,而无代码工具(如Google Cloud AutoML、Teachable Machine)则完全无需编程基础。这些平台覆盖图像识别、文本处理、业务预测等多种场景,适合快速部署简单项目。但专业人士仍需注意,这些工具无法替代复杂场景下的定制化开发。随着技术进步,低门槛AI工具正在改变各行业的创新方式。

2501_90323865的博客 154

OpenTSDB的docker-compose示例文件

可参考内容 dockerhub, petergrace/opentsdb-docker/ docker-compose.yml文件 version: "3"

Tomonkey的专栏 645

杰理AC695N/AC696N/AC701N系列芯片在线调音教程

本教程详细介绍AC695N/AC696N/AC701N芯片在线音效调试方法,包括工具准备(需安装杰理包管理器)、程序修改(需关闭USB功能并启用在线调试宏)、连接方式(USB或串口)、音效调节步骤(EQ和混响参数调整)以及配置保存。注意事项包括版本匹配、连接检查和供电稳定等,并提供常见问题解决方案。适用于快速配置实时音效调试环境并保存最终配置。

qq_42014563的博客 1411

OpenTSDB 2.4安装报FileNotFoundException: LOG_FILE_IS_UNDEFINED (Permission denied)错误

使用rpm包安装目前最新的OpenTSDB 2.4时,会在启动时报: FileNotFoundException: LOG_FILE_IS_UNDEFINED (Permission denied) 经过排查,发现是由于OpenTSDB使用的logback配置文件/usr/share/opentsdb/etc/opentsdb/logback.xml中存在配置错误,文件中使用到的两个变量${LOG_FILE}和${QUERY_LOG}都没有被赋值或使用实际值进行替换,导致OpenTSDB在启动时由于找不到

Laurence的技术博客 1561

手把手教你学PCIE(2.1.8)--pcie基本概念流量控制(Flow Control, FC)

PCIe 的流量控制(Flow Control, FC)是确保数据传输可靠性和高效性的关键技术。通过信用值管理,发送方和接收方可以动态调整数据传输速率,避免数据丢失和溢出。理解流量控制的工作原理和实现机制对于开发和调试 PCIe 系统非常重要。希望这个介绍能帮助你更好地理解和使用 PCIe 流量控制。

MHD0815的博客 1809

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

切换OpenTSDB日志系统为log4j

在opentsdb中使用了slf4j日志系统,有关slf4j介绍可参见已发表日志《SLF4J教程(自由在各种log中切换)》。默认情况下opentsdb使用的是log4j-over-slf4j日志类型。   为了使用以前经常应用的log4j,可以将log4j-over-slf4j-1.7.2.jar换成slf4j-log4j12-1.7.5.jar包,在运行时会报类冲突,原因是slf4j-lo

bingjie1217的专栏 2617

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

fluent将日志采集到opentsdb的笔记(自定义插件)

GitHub上有唯一一个实现好了的插件 fluent-plugin-opentsdb https://github.com/emurphy/fluent-plugin-opentsdb 经过一天的研究,没使用起来,或者说没有得到我们想要的数据,只有打算自己写一个插件了 官网也有如何自定义插件的方法:http://docs.fluentd.org/v0.12/articles/plugin

yang.zhou欢迎各位 2030

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

opentsdb安装部署

版本:2.3.01.下载介质我这里下载的是opentsdb-2.3.0.tar.gz 2.安装依赖包Opentsdb依赖Gnuplot,它 是一个命令行的交互式绘图工具。用户通过输入命令,可以逐步设置或修改绘图环境,并以图形描述数据或函数,使我们可以借由图形做更进一步的分析。yum install gnuplot 2.拷贝到相应目录并解压安装[root@localhost opt]# tar ...

weixin_30794851的博客 341

OpenTSDB 安装流程

依赖环境 A Linux system (or Windows with manual building) Java Runtime Environment 1.6 or later HBase 0.92 or later GnuPlot 4.2 or later HBase 安装 https://blog.youkuaiyun.com/qiaojialin/article/details/88117780...

乔的博客 1370

实现高效的日志处理和数据可视化,OpenTSDB为你提供全面的技术支持

作者:禅与计算机程序设计艺术 实现高效的日志处理和数据可视化:OpenTSDB 技术支持 引言 1.1. 背景介绍 随着信息技术的飞速发展,大数据时代的到来,日志数据也日益增长,成为企业管理和运维的一项重要

AI天才研究院 3779

opetnsdb查看log

opentsdb其实是自带了log, 但是正常情况下是没有开始的, 需要我们自己修改配置文件开启。 文件路径在opentsdb的src/logback.xml 将文件中的<!-- <appender-ref ref="FILE"/>-->修改成<appender-ref ref="FILE"/> 重新启动opentsdb log的路径所在(...

u012447842的博客 229

OpenTSDB 2.3+及TCollector 1.3+安装配置排错

其实不太想用opentsdb,一直以来用influxdb+grafana挺方便的,而且tsdb依赖hbase,虽说容量和速度有保证,但是分布式系统对于一个监控平台来说,终归还是有些重了,出问题定位更繁琐,但领导说用那就用吧。在这里必须吐一下OpenTSDB和Tcollector的文档更新,太落后,看官方文档根本找不到配置文件的位置。最后还得看源码,尤其是TCollector,这个tsdb官方推出的...

weixin_33862993的博客 119
上一篇: 基于CentOS 7 的OpenTSDB部署与使用——OpenTSDB的安装与使用
下一篇: list,map,set,array的特点和相互转换
王树民
博客等级 码龄10年 912粉丝 560原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值