Scribes 一个小巧功能强大的文本编辑器,在编写xhtml上只能用一个爽字来形容,下面是Scribes的功能介绍,欢迎大家下载使用。
主要功能
编辑远程文件
Scribes 现在可以直接通过 ssh、ftp、sftp、webdav、webdavs、samba 等协议访问远程的文件,并执行编辑操作。这项新功能需要使用 Ctrl + l 来激活。
导入/输出模板
的模板是类似代码片断的东西,使用模板能够减少很多重复的工作。新的 Scribes 允许输出或者导入这些模板,以方便用户之间共享劳动成果。
书签操作
在 Scribes 中能够将某些行设置为书签,方便以后返回这些行。使用 Ctrl + d 来定义书签,而用 Ctrl + b 可以打开书签浏览器。
文档切换
有用户向 Scribes 的开发者提议考虑加入 Tab 分页功能。虽然作者没有采纳,但是在新版本中增添了文档切换功能。在编辑多文档时,足可应付的了。文档切换窗口可以按 F9 键打开。
智能的自动完成
虽然 Scribes 之前的版本便已实现了这方面的功能,但是现在已经加强了改进。对于如 []、{}、””、’’ 等配对的符号,Scribes 会自动帮你完成。另外,在 Scribes 中,重复的单词它也会帮你自动输入。
实战Scribe数据分析
简单说一下,Scribe是某社交网站开源的分布式日志搜集系统,架构简单,日志格式灵活,且支持异步发送消息和队列。非常适合用于用户行为分析的基础数据收集,支持hadoop。配合thrift,可以跨语言和平台进行数据收集,非常优秀,性能也非常卓越。
Scribe提供两种不同的架构可供选择,单Server,或C/S。从系统调用上说,Scribe之所以性能卓越,是因为采用了epoll方式,这个就不解释了。简单描述一下Scribe可以设置的几种架构方式。
不过要明确一个概念,Scribe不是抓取日志的东西,而是Push日志的东西
一、架构设计
1. Server,适用于压力较小的网站或服务。日志流程如下
用户 --> WebServer -------|
记录日志的程序框架由thrift自动生成,只需include或者import即可。
2.C/S结构,适合访问量大的网站和服务,并可根据需要进行平行扩展,采用散列的方式分配服务器压力。
用户 --> WebServer2--------|
用户 --> WebServer3--------|
Client及Server均可进行水平扩展,在程序中设置hash访问。
二、安装配置及使用方法(FreeBSD为例)
1.安装Scribe
最新的ports列表中,Scribe及fb303均配置为损坏,所以我们用直接安装二进制的方式进行,事实上,这样更加简单快捷。
#pkg_add -r thrift
#pkg_add -r fb303
这样就完事了。
在ubuntu下,你需要apt-get依赖包,在centos下,抱歉,yum太糟糕了。你需要自己下一堆的依赖文件,然后rpm安装或者花几个小时去逐个编译。
主要的依赖包包括,python,python-dev,boost,boost-lib,perl,libtool,pkgconfig,m4,autoconf,automake,g++,ruby,ruby-dev.再多的我也记不清了。
FreeBSD下还需要做一件事,就是提取配置文件,我建议你下载scribe和thrift的源码包,然后解压缩,但不要编译安装,我们需要的只是他的配置文件。
然后执行
#cp example* /usr/local/etc/
#cd /usr/local/etc/
#mv example1.conf scribe.conf
#cd /usr/local/etc/rc.d
#./scribe start
这样你的scribe server就启动了。
2.生成你的头文件
这需要用到thrift
请找到fb303.thrift和scribe.thift,至于怎么找,自己想办法把。放到相同的目录下,修改scribe.thrift中包含fb303的路径为当前路径。然后执行
会在当前目录下生成gen-php的文件夹,你所需要的php框架文件都在这个文件夹下。
如果你需要生成c++,java,python,ruby甚至erlang, haskball,就将命令行中的php替换为这些单词。
3.编写你的第一个scribe收集程序。
把你的gen-php mv 成thrift或者其他你喜欢的名字然后vi一个文件,内容如下:
$GLOBALS['THRIFT_ROOT'] = './thrift';
include_once $GLOBALS['THRIFT_ROOT'] . '/scribe/scribe.php';
include_once $GLOBALS['THRIFT_ROOT'] . '/transport/TSocket.php';
include_once $GLOBALS['THRIFT_ROOT'] . '/transport/TFramedTransport.php';
include_once $GLOBALS['THRIFT_ROOT'] . '/protocol/TBinaryProtocol.php';
$msg1['category'] = 'Test';
$msg1['message'] = "a,b,c,d,e,f,g";
$entry1 = new LogEntry($msg1);
$messages = array($entry1);
$socket = new TSocket('localhost', 1463, true);
$transport = new TFramedTransport($socket);
$protocol = new TBinaryProtocol($transport, false, false);
$scribe_client = new scribeClient($protocol, $protocol);
$transport->open();
$scribe_client->Log($messages);
$transport->close();
?>
通过web浏览器访问这个程序,我现在假设你已经有一个webserver了。然后去/tmp/scribetest/下查看生成日志文件,正常的话,会生成一个叫Test的文件夹,下面有一个叫Test_00000的文件,内容就是:a,b,c,d,f,g。你可以写任何的东西,只要你觉得将来统计起来方便。
3.配置scribe
当然仅仅这样是不够的,我们需要自定义配置文件好完成诸如日志的rotate,存储路径的设定,甚至是直接往hadoop里面写数据。
我给出一个典型的配置文件,这里包含了rotate,路径设定,多重存储等。
max_msg_per_second=2000000
check_interval=3
<store>
category=default
type=multi
target_write_size=20480
max_write_interval=1
buffer_send_rate=2
retry_interval=30
retry_interval_range=10
<store0>
type=file #类型,文件
fs_type=std #方式,包括std和hdfs
file_path=/data/logs #存储路径
base_filename=thisisoverwritten
max_size=1000000000 #日志文件最大,超过将自动rotate,字节计算
rotate_period=daily #以时间rotate,可以写成300s(秒),hourly
add_newlines=1
create_symlink=no #不创建符号链接
</store0>
<store1>
type=file
fs_type=hdfs
file_path=hdfs://localhost:9090/logs
base_filename=thisisoverwritten
max_size=1000000
add_newlines=1
create_symlink=no
</store1>
</store>
用到hadoop的话,你需要为scribe编译libhdfs。
同类佳作
-
- 落草文章重构助手 V1.2 电脑版 下载
- 1.5万 | 2.7 MB
- 是一款功能非常丰富的文章伪原
-
- 小恐龙公文助手 V1.0 电脑版 下载
- 6.3万 | 459.2 KB
- 是一款专门为写公文的用户研发
-
- FireGen Notes(文本编辑器) V1.0 电脑版 下载
- 7.8万 | 278.7 KB
- 是一款简洁并且占用内存极小的
-
- Plagiarism Checker X(文本查重软件) V6.0.8 电脑破解版 下载
- 8.8万 | 10.2 MB
- 是一款可以帮助你快速查找网页
-
- Hve Notes(静态博客写作客户端) V0.7.5 电脑版 下载
- 3.4万 | 62.8 MB
- 是一款简洁实用的静态博客写作
-
- Text Statistics Analyzer(文本统计分析器) V1.9 电脑版 下载
- 8.9万 | 1.7 MB
- 是一款用于生成任何文本的快速
-
- List Numberer(列表编号软件) V1.2 电脑版 下载
- 1.2万 | 470.6 KB
- 是一款小巧简单的文本添加序号
-
- 96微信编辑器 V1.1 电脑版 下载
- 3.1万 | 21.1 MB
- 一款免费的微信公众号图文排版
近期新游
精选专题
话题问答
- 2022-06-24金铲铲之战驯龙敖兴阵容玩法攻略
- 2022-06-24金铲铲之战九星界龙阵容玩法攻略
- 2022-06-24金铲铲之战重骑熊阵容玩法攻略
- 2022-06-24原神久岐忍邀约任务攻略
- 2022-06-26数码宝贝新世纪番长飞虫兽天赋加点推荐
- 2022-06-24阴阳师百鬼乱狱第四关通关攻略
- 2022-06-24王者荣耀戈娅玩法攻略
- 2022-06-26金铲铲之战s7泥头车阵容攻略
- 2022-06-24堆叠大陆第三章玩法攻略
- 2022-06-23哈利波特魔法觉醒染发魔药制作攻略
火爆专区
最新资讯
-
- 无期迷途主线前瞻兑换码是什么
- 2462024-11-22
-
- 黑曜石表示《宣誓》规模会小于《天际》等大型RPG 因为他们尊重玩家的时间
- 2352024-11-22
-
- 虚幻5免费FPS《The Finals》将与12月登陆PS4主机
- 1072024-11-22
-
- 黑暗幻想回合制roguelike游戏《Blightstone》Steam页面开放 明年发售
- 382024-11-22
-
- 恋与深空最新兑换码详细汇总2024
- 972024-11-22
-
- 恋与深空怦然萌动第6天三星搭配指南
- 1192024-11-22
-
- 肉鸽《Katanaut》Steam页面 明年Q2发售
- 1512024-11-22
-
- 《啪嗒砰》精神续作 节奏动作游戏《Ratatan》Steam商店页面上线
- 2592024-11-22