今天查看两个月前上线的小项目,发现运行非常慢,而且增删改查失效了(吓我一大跳),急急忙忙的就开始了我的线上问题排查之路。
方法:http://www.aboutyun.com/thread-12694-1-1.html http://www.linuxidc.com/topicnews.aspx?tid=13 http
身为程序员,避免不了的要跟BUG打交道。一般在出现BUG的时候,要么登陆Linux查日志、要么通过ELK查关键字。但是这两种都存在一些缺点。
环境:两台联想R680的物理机搭建一套2节点RAC,数据库版本为ORACLE 11.2.0.4
今天晚上,在一个单机多实例的环境上,发生了一个错误,看着比较奇怪,之前也遇到过,但是没有留意,今天花了一点时间,搞了一下,问题得到了解决,跟大家分享一下。
其实大多数Java开发确实能胜任日常的开发工作,但不少候选人却无法在面试中打动面试官。因为要在短时间的面试中全面展示自己的实力,这很需要技巧,而从当前大多数Java开发的面试现状来看,会面试的候选人不多。所以在展开讲述分布式组件面试技巧前,就先给出大多数候选人普遍会出现的问题,这需要大家引以为戒。
上周在升级时候,客户反馈某个job报了下面的错误,想让我们查看一下是不是数据库这边有什么问题。 报错的内容如下。 Caused by: java.sql.SQLRecoverableException: No more data to read from socket at oracle.jdbc.driver.T4CMAREngine.unmarshalUB1(T4CMAREngine.java:1142) at oracle.jdbc.driver.T4CMAREngi
U1:没有太好的办法,上 notepad++ 吧,查关键词,好像可以各种颜色标注不同关键词,我看别人这么用过,还是挺方便的
到目前为止,参照我们系统( 某上市互联网保险中介 )应用,就日志而言,我们经历了以下几个时间段的变化,也经历很多方面的尝试。就目前我们的应用日志系统经历了以下的变化:
在我对项目进行检查后,准备手动进行重启项目服务的时候,发现我对Linux的命令陌生了许多,难过!
大家工作时,少不了ssh登录各个服务器,我这边手里也有很多服务器,有一些登录很快就进去了,有些要卡半天才能进去。之前以为是公司网络问题,每次也就忍了,这次突然不想忍了,决定定位一下。
1.日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。2.应用太多,面临数十上百台应用时你该怎么办。3.随意登录服务器查询log对系统的稳定性及安全性肯定有影响。4.如果使用人员对Linux不太熟练那面对庞大的日志,定位问题慢。
今天在redis中执行setrange name 1 chun 命令时报了如下错误提示:
查找是我们每天都在做的事情,早上醒来找下手机,出门之前查下公交,坐下之后查下资料,分析数据查下模式。 查找文件,查找信息,查找错误是应用起来更为具体的一些工作,而Linux命令行为我们提供了很多快捷强大的查找方式。 命令/可执行程序查找 whereis program_name: 会在系统默认安装目录(一般是有root权限时默认安装的软件)查找二进制文件、源码、文档中包含给定查询关键词的文件。(默认目录有 /bin, /sbin, /usr/bin, /usr/lib, /usr/local/man等类似路
最近组内来了个新人实习生,正好我前几天也给他讲了我的排查问题步骤,今天来分享下我的经验。
记得之前写过一篇:《阿里巴巴 Java开发手册》读后感,之前自学时由于没怎么接触过打“日志”,所以《手册》中的“日志规约”我就先放一边去了。
之前写过一篇 《 在公司做的项目和自己在学校做的有什么区别? 》不知道大家还有印象没有,里面提到了在工作中可能需要等上Linux服务器,查看一些信息(特别是查日志找Bug)。
但是,在学校学完,没咋练手(还是太菜了),去到公司可以说是全忘光了。这篇文章主要来回顾以前的笔记,以及记录一下在工作中比较常用的一些命令。
在数据库的使用过程中,用户作为访问数据库的鉴权因素,起到非常重要的作用,安装MySQL时会自动生成一个root用户,作为数据库管理员,拥有所有权限。在多用户的应用场景下,可能需要给不同的用户分配不同的权限,用来提升系统的稳定性,比如常见:报表库只提供读权限,或者开放给第三方的库,也只提供可读用户。
最近,负责基础设施的同事,要对一批测试环境机器进行回收,回收就涉及到应用迁移,问题是整个过程一团乱。比如服务器A上一堆应用要调用服务器B上一堆服务,结果服务器B被回收了,然后服务器A上一堆应用报错。
工作的时候mongodb都是运维人员早早给我们搭建好了,然后开发就在已经搭建好的基础上面进行mongodb的增删改查,所以关于mongodb的安装细节就不是很清楚,但是作为开发人员,我们还是有必要懂这一块的内容的,所以今天我给大家介绍一下在Linux中如何进行mongodb的安装。
德国科技管理专家斯坦门茨早年移居美国,他以非凡的才能成为美国企业界的佼佼者。一次,美国著名的福特公司的一组电机发生故障,在束手无策之时,公司请斯坦门茨出马解决问题。
今天,内网测试服务器A总是运行一段时间就服务器进程自行退出了,给出了“Java Result :137”这样的错误码。上网查了一下这个137,感觉没有啥有价值的东西。一开始怀疑项目中的JNI调用崩溃到底层,但是没有看到core.*这样的崩溃日志,同时也没有发现OOM的日志,也没有常见的Java 的堆异常log,关键是同样的环境,另外一台机器B,压力远比这个大,都稳定运行很长时间没有问题。下午又崩溃了两三次,一度怀疑Java是不是有什么bug,不过这个想法立马被我否认了,先从自己找原因。
Linux系统下如何kill掉一个后台Java进程,相信童鞋们都知道如何操作。首先使用ps命令查找该Java进程的进程ID,然后使用kill命令进行杀掉。命令如下:
今天在一个全新的Ubuntu16.04主机上配置PHP,MySQL,Nginx环境。 这种事情我已经做过很多遍了。应该是信手拈来。 环境很快就搭建起来了,本地浏览器访问主机IP后确始终显示不出来页面。 我配置的是8001端口,难道防火墙限制了? 这个主机是天猫聚石塔用的,查了文档果然有如下说明:
今天升级Linux内核到2.6.30-r5。但是升级重启后,发现blog打不开了。Nginx报502的Gateway错误。
在服务器接口测试中,我们经常会和各种日志打交道。一旦测试时服务端出现了问题,而单凭服务端的日志又不能发现问题原因的时候,往往开发要向我们测试人员询问客户端这边的情况,希望看看我们能不能提供一些有用信息,如错误返回内容,错误发生时间,哪些用例会出现问题等等。这时就需要我们来查找测试时的日志,从中筛选出有用的信息。
用久了Ubuntu的人,很多人会忽然出个提示:磁盘空间不足1G! 然后分析半天。最近也碰到类似问题,记录如下:
本人最近和不少小公司的程序员打交道。经过和他们的深入交流,我感受到了不少小公司程序员的现状,由此深深地感叹,可能真有不少小公司的程序员未必能干到30岁,甚至,一些技术一般态度又不好的程序员,可能还未必能干到28岁。
线上出现了问题,登上线上的机器查日志是非常常见的操作了。我第一次登上线上机器查日志的时候,我还只记得以下的几个命令(假设现在我们的日志文件叫做service.log):
软件测试日常工作中,每天可能都会遇到不同的问题和bug,有些刚入行的测试喜欢不加分析就直接甩给开发去解决。
背景描述 某项目结构图如下(前端交互式体验及对象存储为主,Redis 及 rds 负载较小没有画出): web1 和 web2 是两个 Apache,publisher1 和 publisher2 是
转载随意,文章会持续修订,请注明来源地址:https://zhenbianshu.github.io 。
我们分享的 python 入门是根据公司实际自动化项目,抽出来的需要快速掌握的 python 基础知识以及掌握知识的方法。
有客户要求安装给Linux系统安装免费的杀毒软件,说实话,之前只部署过火绒企业版的Linux版本——很多Linux服务器根本就不安装杀毒软件,所以Linux系统下的杀毒软件接触得并不多。
某天下午TIM官网突然无法访问(502错误),官网是纯静态页面,挂在nginx服务器下,我们下午也没有做发布。那么,问题出现在什么地方呢?下面就讲讲我定位、解决问题的思路及步骤,具体如下:
作为一名后端程序员,和Linux打交道的地方很多,不会看Linux日志,非常容易受到来自同事和面试官的嘲讽,所以掌握一种或者几种查看日志的方法非常重要。
毕业五年多,一共待过3家公司,碰到各种各样的同事,见识过各种各样的代码,有优雅的,赏心悦目的,也有垃圾的,屎山一样的。因此,写这篇文章,来记录一下一个优秀的后端开发程序员,应该有哪些好的开发习惯。
还是小白,先放个链接:https://blog.csdn.net/ios_xumin/article/details/78125913
项目背景 每个系统都有日志,当系统出现问题时,需要通过日志解决问题 当系统机器比较少时,登陆到服务器上查看即可满足 当系统机器规模巨大,登陆到机器上查看几乎不现实 当然即使是机器规模不大,一个系统通常
Linux查看日志的命令有多种: tail、cat、tac、head、echo等,本文只介绍几种常用的方法。
写 Golang 项目有两件很烦的事情:一件是错误处理时连绵不绝的「if err != nil」,另一件是作为编译型语言,代码修改后不能实时看到效果,
姚冬回答的非常好,我狗尾续貂的说几句。 我们都知道学习能力很重要,那么学习能力从何而来,除了去看书上课这种,如何在实践工作中学习成长? 我之前微博说了一个笼统的概念,什么是能力? 对待问题的态度,以及处理问题的思路和方法。 先说态度 你服务器偶尔出501错误,也许比例不高(知乎也出现过很多次),很多程序员,没错,是很多,假装看不见,不在乎,或者归咎于人品问题。 这就是态度问题。 再往后,负载高了或者其他什么原因,突然频繁出现501错误,不去追寻深入的原因,而是找各种借口, 什么IDC服务商不好,服务器
连接者:不同语言的代码程序和mysql的交互(SQL交互) 1、连接池 管理、缓冲用户的连接,线程处理等需要缓存的需求 2、管理服务和工具组件 系统管理和控制工具,例如备份恢复、Mysql复制、集群等 3、sql接口 接受用户的SQL命令,并且返回用户需要查询的结果 4、查询解析器 SQL命令传递到解析器的时候会被解析器验证和解析(权限、语法结构) 5、查询优化器 SQL语句在查询之前会使用查询优化器对查询进行优化 select id,name from user where age = 40; a、这个select 查询先根据where 语句进行选取,而不是先将表全部查询出来以后再进行age过滤 b、这个select查询先根据id和name进行属性投影,而不是将属性全部取出以后再进行过滤 c、将这两个查询条件联接起来生成最终查询结果 6、缓存 如果查询缓存有命中的查询结果,查询语句就可以直接去查询缓存中取数据 7、插入式存储引擎 存储引擎说白了就是如何管理操作数据(存储数据、如何更新、查询数据等)的一种方法。因为在关系数据库 中数据的存储是以表的形式存储的,所以存储引擎也可以称为表类型(即存储和操作此表的类型)
1.在测试中最重要的文档,他是测试工作的核心,是一组在测试时输入输出的标准,是软件需求的具体对照。编写测试用例,是测试人员的基本功,真正能写好的人并不多。
在项目开发和维护的过程中,我们经常需要在 Linux 服务器上查询和分析日志文件。为了高效地处理大量的文本数据,我们可以借助一些强大的文本过滤工具,如 tail -f、more、zmore 、less、zless和 grep。本文将换种方式介绍这些常用的 Linux 命令,帮助您在日志分析中更加得心应手。
针对上述问题,为了提供分布式的实时日志搜集和分析的监控系统,我们采用了业界通用的日志数据管理解决方案 - 它主要包括 Elasticsearch 、 Logstash 和 Kibana 三个系统。通常,业界把这套方案简称为ELK,取三个系统的首字母。调研了ELK技术栈,发现新一代的logstash-forward即Filebeat,使用了golang,性能超logstash,部署简单,占用资源少,可以很方便的和logstash和ES对接,作为日志文件采集组件。所以决定使用ELK+Filebeat的架构进行平台搭建。
领取专属 10元无门槛券
手把手带您无忧上云