定时执行

自动化处理

直接入库

再去读取这个file入库;

root@VM---ubuntu:/var/log/apache2# awk '{print $1 "\t" $7}' access.log | grep -v '113.' | grep -v '101.226.' | awk '{print "INSERT INTO TAB1 ('\''" $1 "'\'', '\''" $2 "'\'');"}' | head > wawk_select.txt
root@VM---ubuntu:/var/log/apache2# awk '{print $1 "\t" $7}' access.log | grep -v '113.' | grep -v '101.226.' | awk '{print "INSERT INTO TAB1 ('\''" $1 "'\'', '\''" $2 "'\'');"}' | head > wawk_select.sql

w

 如果"一切是IO"“一切是file”是成立的,那么上述的想法也一定可以实现吧 
 
 
root@VM---ubuntu:/var/log/apache2# ls
access.log access.log..gz access.log..gz access.log..gz error.log error.log..gz error.log..gz error.log..gz
access.log. access.log..gz access.log..gz access.log..gz error.log. error.log..gz error.log..gz error.log..gz
access.log..gz access.log..gz access.log..gz access.log..gz error.log..gz error.log..gz error.log..gz error.log..gz
access.log..gz access.log..gz access.log..gz access_log error.log..gz error.log..gz error.log..gz other_vhosts_access.log
root@VM---ubuntu:/var/log/apache2# vi access.log
root@VM---ubuntu:/var/log/apache2# awk '{print $1 "\t" $7}' access.log | grep -v '113.' | grep -v '101.226.' | awk '{print "INSERT INTO TAB1 ('\''" $1 "'\'', '\''" $2 "'\'');"}' | head
INSERT INTO TAB1 ('180.153.206.16', '/rockmongo');
INSERT INTO TAB1 ('125.39.207.33', '/');
INSERT INTO TAB1 ('183.57.53.196', '/skins/vector/csshover.htc');
INSERT INTO TAB1 ('180.153.214.199', '/skins/vector/csshover.htc');
INSERT INTO TAB1 ('112.90.82.218', '/4e5e5d7364f443e28fbf0d3ae744a59a');
INSERT INTO TAB1 ('112.90.82.218', '/jenkins');
INSERT INTO TAB1 ('180.153.201.66', '/jenkins');
INSERT INTO TAB1 ('107.151.148.193', 'http://www.proxyjudge.info/azenv.php');
INSERT INTO TAB1 ('107.151.148.193', 'www.alipay.com:443');
INSERT INTO TAB1 ('107.151.148.193', '');
root@VM---ubuntu:/var/log/apache2#

问题:
针对上边的case得到awk分析文本的结果:
0-怎样直接写入结构化或非结构化的数据库或保存为非数据库形式的file,便于进一步处理?

1-访问日志同步写入数据库,会加大有损用户体验的服务器负担?措施:同步地、相对写入数据库而言低功耗地写入file,之后再在服务器相对低并发的时间段,异步写入数据库?

Linux下apache日志分析与状态查看方法_Linux_脚本之家
http://www.jb51.net/article/33647.htm

对原始的Apache访问日志

下面那个命令是筛选出访问IP不是 177.126 或 192.168 开头的IP,显示访问者的IP,访问时间和访问路径

如果"一切是IO"“一切是file”是成立的,那么上述的想法也一定可以实现吧 awk对apache日志分析 ---的更多相关文章

  1. IO流,File类的测试........课堂加总结

    package liu0926; import java.io.File; import java.io.IOException; public class Text01 { public stati ...

  2. Java输入输出流(IO)-----文件类File详解

       1.java.io.File类简介 凡是与输入.输出相关的类.接口等都定义在java.io包下 File是一个类,可以有构造器创建其对象.此对象对应着一个文件(.txt .avi .doc .p ...

  3. Java IO体系之File类浅析

    Java IO体系之File类浅析 一.File类介绍 位于java.io下的Java File类以抽象的方式代表文件名和目录路径名.该类主要用于文件和目录的创建.文件的查找和文件的删除等.File对 ...

  4. JAVASE(十六) IO流 :File类、节点流、缓冲流、转换流、编码集、对象流

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.File类型 1.1.File类的理解 File类是在java.io包下 File可以理解成一个文件 ...

  5. System.IO中的File、FileInfo、Directory与DirectoryInfo类(实例讲解)

    一.建立的文件夹(对这些文件进行以上四个类的操作): 父目录: 父目录的子目录以及父目录下的文件: 子目录下的文件: 二.效果图 三.代码实现 using System; using System.I ...

  6. java io学习之File类

    1.先看下四个静态变量 static String pathSeparator The system-dependent path-separator character, represented a ...

  7. java io知识点汇总FIle类

    1.路径分隔符问题: 因为java有跨平台行,而在windows和linux中的目录分隔符是不同的.windows是"\" 而linux是"/"  所以必须想办 ...

  8. Java笔记(二十七)……IO流中 File文件对象与Properties类

    File类 用来将文件或目录封装成对象 方便对文件或目录信息进行处理 File对象可以作为参数传递给流进行操作 File类常用方法 创建 booleancreateNewFile():创建新文件,如果 ...

  9. 【Java IO流】File类的使用

    File类的使用 Java中的File类是在java.io.File中,Java.IO.File类表示文件或目录. File类只用于表示文件(目录)的信息(名称.大小等),不能用于文件内容的访问. 一 ...

随机推荐

  1. laravel中,提交表单后给出提示例如添加成功,添加失败等等

    laravel中的表单插入,我想在表单插入成功后,可以像thinkphp一样可以有一个提示内容,上网Google,他们还是给出的方法就是 return redirect('/')->with(' ...

  2. SAP 经常使用T-CODE

    Plant Maintenance (PM) IW32 - Change Plant Maintenance Order  IW33 - Display Plant Maintenance Order ...

  3. linux grub 使用

    linux kernel 格式之 vmlinux.zImage.bzImage.vmlinuz.uImage vmlinux     是编译出来的未经压缩的原始内核文件,是linux接受的可执行文件格 ...

  4. linux应用time和timezone

    linux中应用层(非内核层)time是怎样处理的?时区是怎样设置的?夏令时时是怎样实现的?NTP时间同步是怎么回事?本篇文章就在嵌入式linux应用中time和timezone相关问题总结. 1. ...

  5. Ubuntu12.04安装vim7.3

    刚开始使用Linux的新手,Ubuntu的软件中心可以直接安装vim,个人觉得那样跟windows就没啥区别了,借vim正好也学习一下Linux的编译安装方法,记录一下. Linux下有很多安装形式, ...

  6. 打包iOS应用程序

    如果想要将做的iOS应用程序装到自己的iOS设备上测试.或者装在别人的iOS设备上,或者想发布到App Store里,先要给应用签名.签名就要有证书,这就需要申请证书的过程了. 把自己的应用程序装到设 ...

  7. yum安装的JDK的没有配置环境变量但是在/usr/bin下面都做了软链接

    [root@st152 /usr/bin]# ll |grep javalrwxrwxrwx    1 root root         22 Nov 28 22:14 java -> /et ...

  8. sublime3 10款必备插件

    http://www.cnblogs.com/lhb25/p/10-essential-sublime-text-plugins.html

  9. jquery datagrid设置pageSize不起作用

    http://www.2cto.com/kf/201212/178098.html —————————————————————————————————————————————————————————— ...

  10. Switch选择语句能否作用在String【字符串】上,也就是能否这么写:Switch(一个字符串变量)?

    Switch选择语句能否作用在String[字符串]上,也就是能否这么写:Switch(一个字符串变量)? 解答:不可以,只能处理int,byte,short,char,(其实是只能处理int,其它三 ...