先创建一个目录

在这个job目录下创建upload.sh文件

[hadoop@node1 ~]$ pwd
/home/hadoop
[hadoop@node1 ~]$ mkdir job
[hadoop@node1 ~]$ ls
Desktop    Downloads  job   Music                                     Pictures  Templates
Documents  hive       logs  mysql-community-release-el7-5.noarch.rpm  Public    Videos
[hadoop@node1 ~]$ cd job/
[hadoop@node1 job]$ vim upload.sh

对upload.sh进行编辑

#!/bin/bash#set java env
export JAVA_HOME=/opt/modules/jdk1.8.0_65
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH#set hadoop env
export HADOOP_HOME=/opt/modules/hadoop-2.6.0
export PATH=${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATHlog_src_dir=/home/hadoop/logs/log/
log_toupload_dir=/home/hadoop/logs/toupload/
hdfs_root_dir=/data/clickLog/20190620/echo "log_src_dir:"$log_src_dir
ls $log_src_dir | while read fileName
doif [[ "$fileName" == access.log ]]; then# if [ "access.log" = "$fileName" ];thendate=`date +%Y_%m_%d_%H_%M_%S`#将文件移动到待上传目录并重命名#打印信息echo "moving $log_src_dir$fileName to $log_toupload_dir"xxxxx_click_log_$fileName"$date"mv $log_src_dir$fileName $log_toupload_dir"xxxxx_click_log_$fileName"$date#将待上传的文件path写入一个列表文件willDoingecho $log_toupload_dir"xxxxx_click_log_$fileName"$date >> $log_toupload_dir"willDoing."$datefidone#找到列表文件willDoing
ls $log_toupload_dir | grep will |grep -v "_COPY_" | grep -v "_DONE_" | while read line
do#打印信息echo "toupload is in file:"$line#将待上传文件列表willDoing改名为willDoing_COPY_mv $log_toupload_dir$line $log_toupload_dir$line"_COPY_"#读列表文件willDoing_COPY_的内容(一个一个的待上传文件名)  ,此处的line 就是列表中的一个待上传文件的pathcat $log_toupload_dir$line"_COPY_" |while read linedo#打印信息echo "puting...$line to hdfs path.....$hdfs_root_dir"hadoop fs -put $line $hdfs_root_dirdone    mv $log_toupload_dir$line"_COPY_"  $log_toupload_dir$line"_DONE_"
done

然后新建目录,并上传日志文件

给脚本赋予权限

[hadoop@node1 job]$ ls
upload.sh
[hadoop@node1 job]$ pwd
/home/hadoop/job
[hadoop@node1 job]$ ll
total 4
-rw-rw-r--. 1 hadoop hadoop 1734 Jun 20 10:57 upload.sh
[hadoop@node1 job]$ chmod 777 upload.sh
[hadoop@node1 job]$ ll
total 4
-rwxrwxrwx. 1 hadoop hadoop 1734 Jun 20 10:57 upload.sh
[hadoop@node1 job]$ 

在HDFS上新建目录

执行脚本

可以看到结果

转载于:https://www.cnblogs.com/braveym/p/11051483.html

18.linux日志收集数据到hdfs上面相关推荐

  1. Linux日志收集logrotate原理介绍

    前言 在Linux环境中能够帮助我们分析问题蛛丝马迹的有效办法之一便是日志,常见的如操作系统syslog日志/var/log/messages,应用程序Nginx日志/var/log/nginx/*. ...

  2. 日志审计与分析--Linux日志收集(配置rsyslog服务收集其他Linux服务器日志)

    目录 实验准备 实验步骤: 一.重启rsyslog服务 二.配置rsyslog客户端 三.验证rsyslog配置 实验准备 实验目的:                  1.掌握rsyslog配置方法 ...

  3. 大数据运维实战第十七课 日志收集、分析过滤工具 Logstash应用实战

    本课时主要讲解"日志收集.分析过滤工具 Logstash 应用实战". Logstash 介绍与安装 Logstash 是一款轻量级的.开源的日志收集处理框架,它可以方便地把分散的 ...

  4. Cris 玩转大数据系列之日志收集神器 Flume

    Cris 玩转大数据系列之日志收集神器 Flume Author:Cris 文章目录 Cris 玩转大数据系列之日志收集神器 Flume Author:Cris 1. Flume 概述 1.1 什么是 ...

  5. Linux的系统调用、网络连接状态、磁盘I/O;可疑行为监控/日志收集、SHELL命令执行流程

    http://man7.org/linux/man-pages/man7/capabilities.7.html http://www.cnblogs.com/LittleHann/p/3850653 ...

  6. Scribe+HDFS日志收集系统安装方法

    1.概述 Scribe是facebook开源的日志收集系统,可用于搜索引擎中进行大规模日志分析处理.其通常与Hadoop结合使用,scribe用于向HDFS中push日志,而Hadoop通过MapRe ...

  7. 大数据——Logstash(日志收集)

    Logstash(日志收集) ELK Stack Logstash简介 安装Logstash Logstash如何工作 Logstash配置语法(一) Logstash配置语法(二) 输入插件 编解码 ...

  8. 电商大数据日志收集系统之EFK

    背景 日志管理的挑战: 关注点很多,任何一个点都有可能引起问题 日志分散在很多机器,出了问题时,才发现日志被删了 很多运维人员是消防员,哪里有问题去哪里 集中化日志管理思路: 日志收集 -->格 ...

  9. CSDN首例Python自动化运维实战:从Linux系统中收集数据

    目录:导读 从Linux系统中收集数据 通过邮件发送收集的数据 使用time和date模块 定期运行脚本 从Linux系统中收集数据 使用Linux命令可以查看当前系统状态和运行状况的相关数据.然而, ...

最新文章

  1. 索引贴——移动开发(.Net CF 停止更新)
  2. Greenplum——升级的分布式PostgresSQL
  3. 学习记录-Linux内核模块查看命令
  4. ie浏览器跳转谷歌浏览器_微软IE浏览器的命运:加速死亡
  5. Delphi format的用法
  6. 基于sklearn的朴素贝叶斯_Sklearn参数详解—贝叶斯
  7. Android之第一次不显示EditText光标
  8. java安装后在哪里打开_冷却塔声屏障安装后降噪效果不理想,原因出在哪里?...
  9. oracle中的nls在哪,Oracle的NLS设置
  10. python开发实践教程 于京_《Python开发实践教程》于京、宋伟 著著【摘要 书评 在线阅读】-苏宁易购图书...
  11. 详细说说ActionScript中function的call()方法和apply()方法
  12. 数据科学入门与实战:玩转pandas之六时间序列
  13. 远程服务器传数据库,怎样把本机的mysql数据库上传到远程主机上
  14. ffmpeg.c函数结构简单分析(画图)
  15. 已经导入aspectjweaver maven坐标却无法import
  16. 说说你对AQS的理解?
  17. 自研一个word应用,需要哪些基本功能
  18. 一般椭圆方程表示的椭圆的绘制
  19. java聊天室报告ppt_基于JavaWeb聊天室设计与实现毕业论文+任务书+中期表+中期报告+项目源码+数据库+答辩PPT...
  20. CentOS7.6搭建开源WCP知识管理系统

热门文章

  1. 和在c语言,?和:在C语言中的详解
  2. python3的idle打不开_python3.4idle为什么打不开
  3. 信息学奥赛一本通 提高篇 第一部分 基础算法 第2章 二分与三分
  4. 1.8 编程基础之多维数组 22 神奇的幻方 python
  5. Python一直报错:SyntaxError: invalid syntax 的原因及解决办法
  6. java class _Java Class文件详解
  7. 博图os更新_博途TIA安装与更新
  8. java定时任务_ftp上传软件,ftp上传软件定时功能教程
  9. Qt文档阅读笔记-QIODevice解析及Audio Example实例解析
  10. Qt文档阅读笔记-Advanced Signals and Slots Usage解析与实例