定时执行

自动化处理

直接入库

再去读取这个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. [Yii Framework] Share the session with memcache in Yii

    When developing distributed applications with Yii, naturally, we will face that we have to share the ...

  2. position固定菜单栏

    position:fixed来实现. <!DOCTYPE html> <html lang="en"> <head> <meta char ...

  3. 终端I/O termios属性设置 tcsetattr设置(转)

    终端I/O有两种不同的工作方式: 规范方式输入处理.在这种方式中,终端输入以行为单位进行处理.对于每个读要求,终端驱动程序最多返回一行. 非规范方式输入处理.输入字符不以行为单位进行装配. 如果不作特 ...

  4. iptables常用规则:屏蔽IP地址、禁用ping、协议设置、NAT与转发、负载平衡、自定义链

    iptables常用规则:屏蔽IP地址.禁用ping.协议设置.NAT与转发.负载平衡.自定义链 时间 -- :: IT社区推荐资讯 原文 http://itindex.net/detail/4772 ...

  5. 解决错误: ios property has a previous declaration

    今天维护一个项目的时候,我新添加了一个库,运行的时候报错了: ios property has a previous declaration 上网查了一下没有找到思路,不过根据提示自己试了一下,原来这 ...

  6. .NET 4.0中的缓存功能

    # .NET 4.0中的缓存功能 .Net 4.0中有3种,System.Runtime.Caching,System.Web.Caching.Cache,Output.Cache.下面分别对这三者进 ...

  7. 2. Retrofit2 -- Basic Authentication on Android

    2. Retrofit2 -- Basic Authentication on Android android Retrofit tutorial 整合基本的认证 Retrofit 1.9 Retro ...

  8. J2EE之Servlet初见

    Servlet是J2EE12种规范之中的一个.它也是用java语言编写的程序,其本身也是一种JAVA类,在须要的时候被实例化,不须要的时候自己主动销毁,Servlet的执行是在Servlet容器内执行 ...

  9. CNN图像分割总结

    深度学习(三十三)CRF as RNN语义分割-未完待续 http://blog.csdn.net/hjimce/article/details/50888915 Fully Convolutiona ...

  10. docker-py环境配置

    一.系统环境版本介绍: os-version: Linux -.el7.x86_64 python-version: Python six-version: python-six--.el7.noar ...