log

Docker 容器日志分析

ε祈祈猫儿з 提交于 2020-03-13 09:10:58
查看容器日志 先使用 docker run -it --rm -d -p 80:80 nginx:1.15.8-alpine 命令启动一个nginx容器。如果没有异常,会得到容器ID如 d2408a7931c95a3a83ffeca2fba887763cf925a67890ef3be4d9ff838aa25b00 的长串。再使用 curl -i http://127.0.0.1 访问服务,确认nginx容器正常启动运行。最后使用 docker logs -f d24 查看容器的日志输出,大概如下: ? 1 172.17.0.1 - - [24/Mar/2019:03:51:21 +0000] "GET / HTTP/1.1" 200 612 "-" "curl/7.29.0" "-" 一般来说使用容器ID的前3位即可 以上就是我们查看容器日志的日常方法了,非常简单实用。 容器日志文件存储 容器的日志会以json文件方式存储在本地磁盘,可以使用下面方式查看文件路径 docker inspect d42 | grep Log 可以找到: "LogPath": "/var/lib/docker/containers/d2408a7931c95a3a83ffeca2fba887763cf925a67890ef3be4d9ff838aa25b00

oracle(环境搭建一)

谁都会走 提交于 2020-03-13 02:00:05
图形化安装Oracle11gR2 环境: verify: CentOS release 6.5 (Final) release:CentOS release 6.7 (Final) 1、登录到root用户下: 2、安装相关软件依赖包 灰色部分存在问题,不执行 切换到yum.repos.d目录下: cd /etc/yum.repos.d 使用wget下载oracle提供的yum库: wget https://public-yum.oracle.com/public-yum-ol6.repo 下载yum源 执行yum语句安装所有的oracle所需的先决条件: yum install oracle-rdbms-server-11gR2-preinstall 如果出现” GPG key retrieval failed “的错误: wget https://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6 -O /etc/pki/rpm-gpg/RPM-GPG-KEY-oracle 如果以上步骤不成功则依次检查安装以下包: 检查:rpm -q package-name 安装:yum install -y package-name binutils-2.20.51.0.2-5.11.el6 (x86_64) compat-libcap1-1.10-1

ES6中新加命令

拈花ヽ惹草 提交于 2020-03-13 00:59:34
1.2、let 和 const 命令   var     var 有一个问题,就是定义的变量有时会莫名奇妙的成为全局变量。例如这样的一段代码: 1 for(var i = 0; i < 5; i++ ) { 2 console.log(i); 3 } 4 console.log("循环外” + i);            这样的变量成了全局变量,造成了困扰。     可以看出,在循环外部也可以获取到变量i的值,显然变量i的作用域范围太大了,在做复杂页面时,会带来很大的问题。    let      let 所声明的变量,只在 let 命令所在的代码块内有效。我们把刚才的 var 改成 let 试试: for(let i = 0; i < 5; i++){ console.log(i); }console.log("循环外:" + i)     这样,就把变量的i的作用域控制在了循环内部。 const     const 声明的变量是常量,不能被修改,类似于java中final关键字 const a = 1; console.log("q = ", a); // 给a 赋值 a = 2; console.log("a = " , a);     可以看到,变量a的值是不能修改的。 1.3、字符串扩展   在ES6中,为字符串扩展了几个新的API:   includes()

es6-数组的扩展

拈花ヽ惹草 提交于 2020-03-12 20:44:31
1.Array.of:将一组数据变量,转化成为数据类型 let arr=Array.of(3,2,4,5,55); console.log('arr=',arr); 输出为 这里就返回了一个数组 如果里面不放任何的参数,那么返回的是一个空数组 2.Array.from():将伪数组转换为数组,进行map映射rom { let p=document.querySelectorAll('p'); let pArr=Array.from(p); pArr.forEach(function(item){ console.log(item.textContent); //这是js的一个获取dom节点的一个方法 }) } 输出为1,2,3 映射:将数组里的数字都遍历,*2再输出 console.log(Array.from([1,2,3],function(item){ return item*2; })) 输出为2,4,6 3.fill:将数组中的所有值换成相同的一个数字,还可以设定范围的替换 (1) console.log('fill-7:',['1',2,'a',undefined].fill(7)); (2) console.log('fill.pos:',['1',2,'a',undefined].fill(7,1,3)); 这里fill(7,1,3)中‘7’是要替换成的数值,‘1

JavaScript基础语法

て烟熏妆下的殇ゞ 提交于 2020-03-12 20:24:58
JavaScript是一种前台脚本语言,一般用来处理页面业务逻辑以及页面交互。 下面是JavaScript的一些基本语法。 hello world    1.控制台输出语句   console.log('hello world')   2.弹出框提示信息   alert('hello world')   3.将内容书写到页面   document.write('<h2 style="color: red">hello world </h2>') 定义变量 JavaScript中定义变量的方法有四种:let , const , var const 声明一个只读的常量,一旦声明,常量的值就不能改变。 let a = 10;const b = 20;var c = 30;d = 40;console.log(a)在块级作用域也就是{}中就不能被外界访问 console.log(b)let和const有块级作用域,不允许重复定义 console.log(c)var没有块级作用域, 但有局部作用域,可以重复定义 console.log(d)没有关键字声明的变量是全局变量,在函数内部声明的外部也可以用 var 和 let 声明的变量在全局作用域中被定义时,两者非常相似,但是,被let声明的变量不会作为全局对象window的属性,而被var声明的变量却可以,let 声明的变量只在 let

Web服务器磁盘满故障

守給你的承諾、 提交于 2020-03-12 16:45:03
Web服务器磁盘满故障 问题: 硬盘显示被写满,但是用du -sh /*查看时占用硬盘空间之和还远小于硬盘大小,即找不到硬盘分区是怎么被写满的。 今天下午接到同事紧急求助,说生产线服务器硬盘满了。该删的日志都删掉了。可空间还是满的,情况危急啊。这个问题,在多年以前直接和间接的遇到过1-2次。以前太懒惰了,这次记录下来和大家分享。 相关日志如下: █ 查看硬盘分区大小 1 [root@www ~]# cat /etc/redhat- release 2 CentOS release 6.4 (Final) 3 [root@www ~]# df - h 4 Filesystem Size Used Avail Use% Mounted on 5 /dev/sda3 117G 111G 0 100 % / 6 /dev/sda1 145M 12M 126M 9 % / boot 7 tmpfs 3 .0G 0 3 .0G 0 % /dev/shm 这是一台web服务器(apache+tomcat+mysql) 通过dh -h命令查看 总大小117G,使用了111G 1 [root@www /]# fdisk - l 2 3 Disk /dev/sda: 146.8 GB, 146815733760 bytes 4 255 heads, 63 sectors/track, 17849

堆栈内存、this绑定、js event loop、class语法、斐波那契数列、动态规划

☆樱花仙子☆ 提交于 2020-03-12 15:58:47
1.堆栈内存 栈内存主要用于存储各种基本类型(Boolean、Number、String、undefined、null以及对象变量的指针)的变量。 堆内存存储object。 2.this指针 new绑定的优先级大于bind绑定 3.js event loop以及宏任务和微任务; //定时器任务属于宏任务,需要在任务队列等待 setTimeout ( ( ) => console . log ( 'a' ) ) ; //promise是异步微任务,在本轮同步任务结束之前执行 Promise . resolve ( ) . then ( ( ) => console . log ( 'b’ ) ; ) . then ( //箭头函数的resolve传递的参数作为这个then的参数 ( ) => Promise . resolve ( '2' ) . then ( ( data ) => { //定时器任务放入任务队列中等待,放在第一个定时器之后 setTimeout ( ( ) => console . log ( 'd' ) ) ; console . log ( 'f' ) ; //返回值作为下一个then的参数 return data * 2 ; } ) ) . then ( data => console . log ( data ) ) ; //输出:bf4ad 4

js控制台显示[object Object]问题

心已入冬 提交于 2020-03-12 13:50:52
问题描述:在console.log中打印一个json对象时会显示[object Object] //清空控制台输出并将光标显示在第一排 console.clear(); //定义一个json格式的对象 var j = {}; j.name = "小J"; j.sex = true; j.age = 19; //控制台输出 console.log("JSON对象:"+j); console.log("JSON对象:"+JSON.stringify(j)); console.log(j); console.log("JSON对象:%o",j); 控制台显示 需要先了解Console对象 Console 对象用于 JavaScript 调试。JavaScript 原生中默认是没有 Console 对象,这是宿主对象(也就是游览器)提供的内置对象。 用于访问调试控制台, 在不同的浏览器里效果可能不同。 console.log()方法可以简单地传递一系列对象,这些对象的字符串表示形式被串联成一个字符串,然后输出到控制台。(以Object.prototype.toString()的方法表示为字符串) 正式因为console.log()在输出多个对象的时候会以字符串的形式串联成一个字符串输出,所以会显示为“JSON对象: [object Object]"。

linux日志查找技巧

倾然丶 夕夏残阳落幕 提交于 2020-03-12 11:52:44
基础命令 # 查询日志尾部最后10行的日志; tail -n 10 test.log #查询10行之后的所有日志; tail -n +10 test.log # 查询日志文件中的头10行日志; head -n 10 test.log # 查询日志文件除了最后10行的其他所有日志; head -n -10 test.log # 查看日志的尾部,并刷新显示日志变动。此方法适合在调试程序的时候查看日志,日志变动会实时刷新显示到终端。 tail -f test.log 按行号查看---过滤出关键字附近的日志 通常时候我们用grep拿到的日志只有关键字所在行, 而我们需要查看关键字附近的日志. 首先: cat -n test.log |grep "keyword" 得到关键日志的行号 然后,得到"keyword"关键字所在的行号是102行. 此时如果想查看这个关键字前10行和后10行的日志: cat -n test.log |tail -n +92|head -n 20 tail -n +92 表示查询92行之后的日志 head -n 20 则表示在前面的查询结果里再查前20条记录 按日期查看---查找指定时间段的日志 sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log 特别说明

Spring Boot 中的AOP使用示例,打印请求执行时间等

巧了我就是萌 提交于 2020-03-12 10:15:49
参考书: Spring实战(第4版) Spring Boot 2 精髓 IDE: IDEA 2019.2.3 Maven 3.6.2 Spring Boot 2.1.10.RELEASE Knife4j 一、准备: 1. 对Spring AOP 有点了解 2. pom中添加aop的starter 如果parent定义了版本,此处可以不加version <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId> <version>2.1.10.RELEASE</version> </dependency> 二、配置 1. 在启动类添加自动代理注解 @EnableAspectJAutoProxy 2. 编写切面 import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.util.StopWatch; @Configuration public class GlobalConfig { @Bean StopWatch