重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
第一种方法,我们可以在MapReduce任务查看页面找到这些日志
创新互联公司专注于宿豫网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供宿豫营销型网站建设,宿豫网站制作、宿豫网页设计、宿豫网站官网定制、成都小程序开发服务,打造宿豫网络公司原创品牌,更为您提供宿豫网站排名全网营销落地服务。
1.在MapReduce任务查看页面找到任务,点击进入
2.在任务详情页最下面由执行了该任务的节点
3.在节点的web地址后面加上logs/userlogs就能看到application列表,选择自己要找的
4.依次查看container
5.从container进去之后就是最终要找的日志了
stderr:输出System.err输出的信息;
stdout:输出System.out输出的信息
syslog:输出日志工具(比如Slf4j,log4j)输出的信息
可以看出通过管理页面查找sysout日志是十分麻烦的,而且mapper和reducer的日志不在一起,如果有多个reducer的话查看起来更是不方便
我们的代码(mapper,reducer)是放到了Yarn上面去执行,Yarn的日志存放地址是在yarn-env.sh中配置的,如下
我们可以去节点上面查找;为了方便快捷 直接用脚本搞定
scanMRLog.sh
if [ $# -le 0 ]
then
echo 缺少参数
exit 1
fi
# 从Hadoop的配置文件获取所有datanode
for n in `cat ${HADOOP_HOME}/etc/hadoop/slaves`
do
echo ===========查看节点 $n============
# 下面的 ~/logs/yarn 是在yarn-site.xml中设定的日志目录
ssh $n "cat ~/logs/yarn/userlogs/${1}/container_*/*out"
done
查看的时候只需要一行命令搞定,mapper,reducer里面的输出就都能看到了
# 命令中的appId从MRWeb管理端就能看到
sh test.sh application_1479689852668_0197
不明白你什么意思,telnet是通过23端口去连接这个主机,如果你的系统开启了23端口和telnet服务,那么只需要telnet ip地址 就行了,端口是默认的,如果你自行修改了端口号,当然在telnet的时候是需要加端口的。你的这个源地址是指什么?
用linux一段时间了,有时候想看看ls、cat、more等命令的源代码,在下载的内核源码中用cscope没能找到,在网上搜索了一下,将方 法总结如下:以搜索ls命令源码为例,先搜索命令所在包,命令如下:
lpj@lpj-linux:~$ which ls /bin/ls用命令搜索该软件所在包,代码如下:
lpj@lpj-linux:~$ dpkg -S /bin/ls coreutils: /bin/ls从上一步中可以知道ls命令的实现在包coreutils中,用apt安装(说安装有些歧义,主要是区分apt-get -d)该包的源代码然后解压,代码如下:
sudo apt-get source coreutils cd /usr/src/coreutils-XXX #XXX表示版本号 sudo tar zxvf coreutils-XXX.tar.gz 或者只下载源码,然后手动打补丁再解压,代码如下:
sudo apt-get -d source coreutils cd /usr/src tar zxvf coreutils-XXX.tar.gz gzip -d coreutils-XXX.diff.gz #这一步会生成coreutils-XXX.diff文件 patch -p0 coreutils-XXX.diff cd coreutils-XXX tar zxvf coreutils-XXX.tar.gzOK,这几步执行完后,就可以进入/usr/src/coreutils-XXX/coreutils-XXX/src中查看各命令对应的源代码了。
关于更多Linux的学习,请查阅书籍《linux就该这么学》。
首先在linux命令行中新建一个目录 mkdir github(名字可以按你项目名定义),之后敲git命令,确认git工具已经安装好了,我使用的是Ubuntu14.04,git工具默认安装好了。若没有安装,可以尝试自行安装,安装方法比较简单。如下图所示
2
在github查看你所需要使用下载源码项目的URL地址,比如我下载的openwrt,在github中搜索该项目,可以查看到相关的URL地址: 复制下该地址,后面需要使用。如下图所示
3
在linux命令行中使用 git clone 命令,对该项目源码clone到本地,等待clone完成。如下图所示(该项目较大,网络不快,还未clone完成,只做参考)
1)在使用dpkg时,若出现错误,可以使用sudo命令使其以root权限执行。
2)使用apt-get source下载的源代码保存到当前目录下。。此外,当我们知道了命令所属的包后,也可以到相应的官方网站下载。
2、CentOS中系统命令源代码的获取方法
以32位CentOS6.6下,获取ls命令的源代码为例,可以使用如下的方法下载源代码:
1)配置源代码的源
在CentOS中,源的配置文件为:/etc/yum.repos.d/CentOS-Base.repo,修改该文件需要root权限。