发表于: 2017-10-20 23:51:45
1 773
今天完成的事情:
1.编写一个欢迎页的脚本
2.查看了Nginx日志,添加我们需要的相应时间等属性
(1)在用默认配置文件打日志时,包含以下属性:
(2)添加上访问用户名,响应时间等属性
3.编写脚本统计访问次数,统计响应延时
(1)第1条打出来是访问用户名(这个在连8080端口时有设置)
(2)第29条打出来的是响应时间
(3)通过脚本将这些命令取出来放在一起的输出结果:
4.resin已经下载好了,今天通过nginx启动成功。不过登录时稍微与tomcat有些不同,就是需要在项目名后面加上登录界面的URL:login。
主要原因是项目中的web.xml里面有个欢迎页是login.jsp,resin访问是会先在WIN-INF下面的jsp文件下找login.jsp,所以没有成功。这可能也是resin和tomcat之间不同的地方吧,有时间探究探究。
明天计划的事情:
完成任务三剩余工作,尽可能提交任务三
遇到的问题:
1.原以为写脚本很难,但没想到其实是最简单的一个步骤。主要是遇到像要求统计响应次数的话,应该配置在什么地方的问题就比较难理解。然后参考了成延大佬的日志,写的很详细,就可以理解了。
2.resin的启动
我直接执行:./resin.sh
然后由于写过脚本,所以可以看出resin.sh就是一个脚本文件,里面提示了我们很多命令,好比启动的话是start;停止的话是stop;重启的话是restart等。所以应该算是一种收获吧!
3.就是不太明白,好比叫你统计用户访问的次数,这个日志是很多的,它是统计哪个时间段的,我感觉是从这次启动到统计这段时间的日志。但是如果访问量很多的话,信息太多,我们怎么去查看自己需要的信息呢?
收获:
1.shell脚本
(1)#!/bin/sh
以该命令开始(必须放在文件的第一行)
符号#!用来告诉系统它后面的参数是用来执行该文件的程序
(2)chmod +x filename
当编辑好脚本时,如果要执行该脚本,还必须用该命令使脚本可执行。
(3)./脚本文件名
用这个命令执行,输出需要的命令。
(4)变量名=值
给变量赋值的命令,使用变量名是在前面加个$符号。
⚠️当变量名和其他文字容易混淆时,可以给变量名加{}。比如需要输出2nd,赋值num=2后输出不能设置为echo “$numnd”,他会找numnd的变量名,最后没找到。所以要设置为echo “${num}nd”就好了。
2.在任务三中的脚本编辑中有遇到以下相关知识(文件名为file)
(1)几种Unix命令
wc –l file:计算文件行数
wc -w file:计算文件中的单词数
wc -c file: 计算文件中的字符数
sort file.txt: 对file.txt文件中的行进行排序
uniq: 删除文本文件中出现的行列比如: sort file.txt | uniq
!!!最重要的一个命令
awk: 用来从文本文件中提取字段。缺省地,字段分割符是空格,可以使用-F指定其他分割符。
注意:若空格不方便可以用以下命令更换分隔符,我由于字段不多,所以就自己提取出来了。
这样查看:awk '{print $2}’ 路径
cat file.txt | awk -F, '{print $1 "," $3 }'这里我们使用,作为字段分割符,同时打印第一个和第三个字段。
如果该文件内容如下: Adam Bor, 34, IndiaKerry Miller, 22, USA命令输出结果为:Adam Bor, IndiaKerry Miller,
(2)相关概念:
管道 (|) 将一个命令的输出作为另外一个命令的输入。
还有重定向等概念,以后会常常用到。
(3)流程控制
这次有用到的是if表达式,就很简单。不会使用可以写一个简单脚本试试就可以试出来是怎么用的了。
可以看以下链接了解:
http://www.jb51.net/article/28514.htm
3.日志中我们需要添加字段
(1)$server_name:虚拟主机名称。
(2)$uptream_status:upstream状态。
(3)$upstream_addr:upstream的地址。
(4)$request_time:整个请求的总时间。
(5)$upstream_response_time:请求过程中,upstream的响应时间。
我感觉这些字段可以不全写,就像我们只需要响应时间和访问次数。所以别的不写应该也不会影响我们的脚本编写。
另外如果想知道默认状况下日志打出来的所有字段所代表的含义可以参考大佬的日报,有以下链接,不过感觉自己可以通过日报信息自己猜出来个大概。
http://www.jnshu.com/daily/37039?dailyType=others&total=19&page=3&uid=10393&sort=0&orderBy=3
4.Resin
也是一个服务器,和tomcat的区别在任务二的深度思考中有,以后小课堂再详细研究。
评论