精华内容
下载资源
问答
  • linux查询日志中指定字段

    千次阅读 2020-05-13 18:07:59
    根据字符串查询日志中关键词出现的位置:cat -n 日志文件| grep ‘keyword’ 例: cat -n 123.log | grep 'keyword' grep 'keyword' 123.log 检索日志,并显示该条日志的前后N(10)行记录:cat 日志文件 | grep -n...

    1.grep命令:cat 1.log | grep key 可以写为: grep key 123.log

    根据字符串查询日志中关键词出现的位置:cat -n 日志文件| grep ‘keyword’

    例:

    cat -n 123.log | grep 'keyword'
    grep 'keyword' 123.log
    

    检索日志,并显示该条日志的前后N(10)行记录:cat 日志文件 | grep -n -B10 -A10 “关键字”

    cat -n 123.log | grep -n -B10 -A10  'keyword'
    

    统计在文件中出现的行数

    grep -o "hello" 123.log | wc -l
    

    2.head和tail

    tail -n 10 日志文件 查询日志尾部最后10行的日志;
    tail -n +10 日志文件 查询10行之后的所有日志;
    head -n 10 日志文件 查询日志文件中的头10行日志;
    head -n -10 日志文件 查询日志文件除了最后10行的其他所有日志;

    展开全文
  • zabbix自动发现监控日志异常字段

    千次阅读 2019-11-04 14:05:54
    之前也没有做过监控,现在通过读取每个工程的日志来检测异常字段进行报警; 1、先写脚本获取到那个工程的日志文件的绝对路径 cat log_collect.py #!/usr/bin/python3 # -*- coding: utf-8 -*- '''此脚本文件...

    公司服务器出现java应用内存溢出的情况,导致应用异常;之前监控做的不完善,现在通过读取每个工程的日志来检测异常字段进行内存溢出报警;

    zabbix监控日志的原理

    在这里插入图片描述

    通过使用log函数来操作

    log文件的item解释

    log[file,<regexp>,<encoding>,<maxlines>,<mode>,<output>,<maxdelay>]
    
    file - 日志文件的全路径。 
    regexp - 过滤日志的正则表达式。 
    encoding - 字符编码,默认为英文单字节SBCS(Single-Byte Character Set)。 
    maxlines - agent每秒发送给server(或proxy)的数据的最大行数,这个参数会覆盖掉zabbix_agentd.conf配置文件里的’MaxLinesPerSecond’参数。 
    mode - 可填参数:all(默认),skip(跳过旧数据)。 
    output - 自定义格式化输出,默认输出regexp匹配的整行数据;转义字符’\0’表示regexp,只输出regexp匹配的字段。 
    maxdelay-The ‘maxdelay’ parameter in log items allows ignoring some older lines from log files in order to get the most recent lines analyzed within the ‘maxdelay’ seconds.(这一句我翻译不准,所以上上英文~)
    备注:我推荐大家使用第二个参数,如果只使用第一个参数,将会导致日志文件里的内容统统丢给zabbix_server记录。加上第二个参数时,过滤后的日志内容才会传给zabbix server,大大减少了日志内容占用的空间。
    

    1、先写脚本获取每个工程的日志文件的绝对路径

    cat log_collect.py

    #!/usr/bin/python3
    # -*- coding: utf-8 -*-
    
    '''此脚本文件用于获取需要监控的日志文件的绝对路径'''
    import os, json
    
    filenamelist = []
    def collect_log(path):
        direc_list = os.listdir(path)
    
        for direc in direc_list:
            filepath = os.path.join(path, direc)
            if os.path.isdir(filepath):
                file = filepath + '/logs/' + direc + '.info.log'
                filenamelist.append((file,direc))
    
    if __name__ == '__main__':
    
        filelog = collect_log('/opt/app')
        a = {"data": []}
        for filename in filenamelist:
            b = {}
            b["{#FILELOG}"] = filename[0]
            b["{#FILENAME}"] = filename[1]
            a["data"].append(b)
        print(json.dumps(a))
    

    执行脚本打印出来的是json格式的字符串,如下示例:

    {"data": [{"{#FILELOG}": "/opt/app/chanpy-web-user/logs/chanpy-web-user.info.log", "{#FILENAME}": "chanpy-web-user"}]}
    

    这个是zabbix要求的固定格式;{#GILELOG}这个是日志文件的绝对路径,{#FILENAME}这个是工程名;为了便于在zabbix界面中配置自动发现规则时用到它们,zabbix界面中将这两个变量定义为$1,$2;但是在监控原型和触发器中只能使用{#FILELOG}和{#FILENAME}这两个变量,不能使用$1和$2;

    2、配置zabbix agent

    cat /etc/zabbix/zabbix_agentd.conf

    UserParameter=filelog,/usr/bin/python /etc/zabbix/scripts/log_collect.py # filelog是自定义的发现规则的键值
    

    3、zabbix界面中配置

    创建一个模版 :QK_Log_Collect
    在这个模版里创建一个应用集:Log
    创建自动发现规则

    自动发现规则的名称不能使用{#FILENAME}和{#FILELOG},只能使用$1和$2;
    在这里插入图片描述

    监控项原型和触发器的名称不能使用$1和$2,只能使用{#FILELOG}和{#FILENAME}
    在这里插入图片描述

    在这里插入图片描述

    4、结果显示

    将上面创建好的模版应用到主机上,可以看到会自动发现监控项

    在这里插入图片描述

    当出现异常字段将告警

    展开全文
  • linux 查找日志指定字段

    千次阅读 2018-12-06 14:14:00
    进程号 cat ietc-api-wechat.log.201807271100.log|awk '{print 8}' for i in *.log;do grep "params={plateId=" 10,$11}'>>a.txt;done ...

    进程号

    cat ietc-api-wechat.log.201807271100.log|awk '{print 4}'|sort|uniq|grep "http-nio*" ietc-api-wechat.log.201807271100.log grep "http-nio-9000-exec-63" ietc-api-wechat.log.201807271100.log|grep "weixin openId"|head -n 1|awk '{print8}'

    for i in *.log;do grep "params={plateId=" i|awk '{print10,$11}'>>a.txt;done

    展开全文
  • logstash配置,之前映射添加后不不能拆分字段所有接受的日志文本都入到一个message字段中, 反复尝试了4天左右都找不到原因,我觉得字段拆分是mapping负责的,这个技术研究都有点绝望了。在网上搜索 我看到文章中...

    logstash配置,之前映射添加后不不能拆分字段所有接受的日志文本都入到一个message字段中,
    反复尝试了4天左右都找不到原因,我觉得字段拆分是mapping负责的,这个技术研究都有点绝望了。在网上搜索
    我看到文章中出现

    
    filter {
          json {
            source => "message"
            remove_field => [ "message"]
        }
    }
    


    大概意思就是移除最外层的message
    我觉得他有可能是这个问题的解决方式,试一下这个可以成功把日志按照mapping中指定的字段拆分出来了

    input {
      kafka{
            bootstrap_servers =>["192.168.1.70:9092,192.168.1.71:9092,192.168.1.72:9092"]
            topics => ["web-log"]
            auto_offset_reset => "earliest"
      }
    }
    filter {
          json {
            source => "message"
            remove_field => [ "message"]
        }
    }

     

    展开全文
  • MySQL查询字段区不区分大小写? MySQL innodb的事务与日志的实现方式 MySQL binlog的几种日志录入格式以及区别 MySQL查询字段区不区分大小写? 答案是不区分 如何解决需要区分英文大小写的...
  • Sqlserver 死锁日志 常见字段说明

    千次阅读 2016-11-17 13:59:34
    转自: SQL Server死锁日志分析(打开1204标记) 使用跟踪标记 1204 --打开跟踪标记 DBCC TRACEON (1204,-1) --关闭跟踪标记 DBCC TRACEOFF (1204,-1) 处于死锁状态时,跟踪标记 1204 在等待的线程、存在等待线程...
  • 日志字段提取优化方案

    千次阅读 2014-09-11 15:07:10
    前提:日志文件中的字段由分隔符隔开。比如有100个字段,希望可以快速提取其中50个字段。 优化fagnanrux
  • kettle日志添加字段的源码修改

    千次阅读 2016-07-13 14:17:24
    LogTableInterface.java(/kettle4.2/src-db/org/pentaho/di/core/logging/LogTableInterface.java) 73、74行添加接口方法: //增加jobName参数 mengshanfeng public RowMetaAndDatagetLogRecord(LogStatus status,...
  • 工作中,接口异常等导致线上出问题,可能需要提取异常日志中的一些关键字段,做一些数据分析或处理。shell可帮助快速完成任务。 1. 提取日志字段 sed -n '/validate error/p' error.log|awk -F 'id:' '{print $2...
  • Nginx日志字段解析——正则表达式

    千次阅读 2017-06-16 16:13:05
    ([^ ]*) ([^ ]*) ([^ ]*) (\[.*\]) (\".*?\") (-|[0-9]*) (-|[0-9]*) (\".*?\") (\".*?\")来源:https://www.iteblog.com/archives/1250.html
  • thinkPHP 查询数据库字段

    千次阅读 2017-05-04 17:44:21
    * 查询指定的字段是否存在表中 * @param type $field 字段名称 * @return void * @access protected */ protected function issetField($field){ $fields=$this->model->getDbFields(); return array_search($field,...
  • Tomcat 记录访问日志字段详解

    千次阅读 2018-12-24 10:49:30
    默认 tomcat 不记录访问日志,如下方法可以使 tomcat 记录访问日志 编辑 ${catalina}/conf/server.xml 文件. 注 :${catalina} 是 tomcat 的安装目录 把以下的注释 (&lt;!-- --&gt;) 去掉即可。  &lt...
  • ES 处理日志字段超出 1000 引发的报错 ES 集群的日志记录中经常会发现如下报错信息: [2021-02-04T22:40:06,673][DEBUG][o.e.a.a.i.m.p.TransportPutMappingAction] [m-7416] failed to put mappings on indices [[...
  • Logstash日志字段拆分grok

    千次阅读 2017-04-24 15:04:00
    参考和测试网站:http://grokdebug.herokuapp.com 例如:test-39.dev.abc-inc.com Mon Apr 24 13:53:58 CST 2017 2017-04-16 23:37:44,282 [DEBUG] add service:... 正则表达式过滤为:%{HOSTNAME:host...
  • JVM gc打印日志字段说明

    千次阅读 2017-07-03 18:00:39
    minor gc字段说明 full gc字段说明 串行收集器: DefNew:是使用-XX:+UseSerialGC(新生代,老年代都使用串行回收收集器)。 并行收集器: ParNew:是使用-XX:+UseParNewGC(新
  • 主要介绍了Python日志:自定义输出字段 json格式输出方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • nginx的log_format日志格式和字段介绍

    万次阅读 2020-08-27 14:45:01
    nginx中access_log记录日志是可以自定义格式的,通过自定义格式,一方面供我们更方便的查询请求,另外还可以做统计,接口访问速度分析等。 语法: log_format name format [format ...] 例如nginx中默认的格式...
  • 系统日志中敏感字段掩码处理

    千次阅读 2020-05-28 08:24:00
    做为金融业务开发,很多接口都需要使用到用户信息,而在用户信息当中难免会有一些敏感字段,比如:用户姓名,银行卡号等等。所以在用户敏感信息保存以及日志打印的时候就不能把这些敏感信息明文的保存起来。对于...
  • sql 在更新某字段后写入日志触发器 sql某字段更新后,触发该sql语句的sql触发器 类似于记入日志
  • 数据脱敏——基于Java自定义注解实现日志字段脱敏

    万次阅读 多人点赞 2017-09-01 00:16:19
    要对数据进行脱敏,基本上都是对一些关键... 写日志时,序列化之前先把要打印的对象clone一份,然后找出添加脱敏自定义注解的字段进行相应规则的处理转化(比如把“刘德华”改为“刘*华),然后再对对象进行序列化操作。
  • 背景: 在日志输出的时候,有时会输出一些用户的敏感信息,如手机号,身份证号,银行卡号等,现需要对这些信息在日志输出的时候进行脱敏处理 思路: 使用fastjson的ValueFilter对带有自定义注解的字段进行过滤
  • mongodb查询之只查询指定字段

    千次阅读 2019-12-31 14:29:41
    从开始直接使用api去查询,到后面使用DBcursor查询,虽然效率上取得了一旦的效果,但是没有达到预期,最后打日志分析得出,其实查询本身很快了,只是在数据传输的过程中比较慢(由于数据量比较大)。 于是就有了...
  • 1.查找日志中某个字段长度最大的记录 假设日志名为:chat.log 日志格式为: |时间|地点|…|消息|字段N| 假设第23个字段是我们想要比较的字段。 通过以下命令筛选: cat chat.log | awk -F '|' '{if(length($23)>...
  • 我们有一个日志表,里面的data字段是保存不同对象的json数据,遇到想根据里面的json的字段内容作为条件查询的情况 # mysql根据json字段的内容检索查询数据 mysql5.7以上支持json的操作,以及增加了json存储类型 ...
  • Zabbix监控网络设备日志文件及字段报警一、首先就是配置网络设备日志传送到zabbix存放日志的指定目录,一般目录为/var/log/需要配置rsyslog.conf根据需求添加tcp或者udp或者都添加字段#ProvidesUDPsyslogreception$...
  • 实体字段对比(记录修改日志

    千次阅读 2020-05-10 13:10:29
    1,全字段回显到页面进行修改的情况 用户提交的数据与通过编码查询数据库返回的数据实体进行对比 /** * 对比两个bean的差异属性 * @param oldBean * @param newBean * @param clazz * @param <T> * @...
  • Ms SQL中 根据表名查询字段信息,根据表名和字段判断该字段是否存在 if (exists (select name from syscolumns where id = object_id('mm_sample') and name = 'wt_id')) print '该字段已经存在!'; else ...
  • 日志级别之前增加自定义字段

    千次阅读 2017-03-21 19:04:12
    最近阅读zookeeper源代码,发现可以通过logback在日志级别之前能够增加自定义字段。 举例:在日志中增加myid :serverid 输出方式:2017-03-08 01:09:51,763 [myid:2] - INFO [SyncThread:2:FileTxnLog@...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 328,135
精华内容 131,254
关键字:

日志查询字段