Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中的日志/跟踪:Scribe、Chukwa、Log4HP?_Php_Logging_Log4php_Scribe Server_Chukwa - Fatal编程技术网

PHP中的日志/跟踪:Scribe、Chukwa、Log4HP?

PHP中的日志/跟踪:Scribe、Chukwa、Log4HP?,php,logging,log4php,scribe-server,chukwa,Php,Logging,Log4php,Scribe Server,Chukwa,这可能是一个相当高层次的问题,需要很多解释,但我需要很多解释 基本上,我正在开发一个需要大量日志记录和跟踪的PHP应用程序。跟踪点击、交互、性能等任何阳光下的东西。Facebook的Scribe和雅虎的Chukwa都是这方面的优秀实现。我对log4php知之甚少 我想要的是对这种日志如何工作的高层次概述,特别是与PHP应用程序结合使用。您可以在处理日志的位置停止;我已经知道我想使用Hadoop/Hive进行处理和存储 我还希望对应用程序本身中发生的事情进行一些比较低级的了解。例如,如何将单击的行

这可能是一个相当高层次的问题,需要很多解释,但我需要很多解释

基本上,我正在开发一个需要大量日志记录和跟踪的PHP应用程序。跟踪点击、交互、性能等任何阳光下的东西。Facebook的Scribe和雅虎的Chukwa都是这方面的优秀实现。我对log4php知之甚少

我想要的是对这种日志如何工作的高层次概述,特别是与PHP应用程序结合使用。您可以在处理日志的位置停止;我已经知道我想使用Hadoop/Hive进行处理和存储


我还希望对应用程序本身中发生的事情进行一些比较低级的了解。例如,如何将单击的行为发送给记录器?我也很感激任何能帮助我开始的阅读。

你可以购买/获得工具来为你做这件事,或者在内部构建

购买/获取:

1-使用Google/Yahoo analytics标记您的页面-这将跟踪页面浏览量、页面流量性能、关键字的SEO排名等

2-用于跟踪和记录用户行为,包括点击、交互和性能。我发现没有什么比ClickTale更好的了——它通过视频记录用户会话,并将这些“日志文件”放入服务器

内部: 1-在表单中创建提交到日志数据库的隐藏字段也有效。您可以为表单指定唯一的ID,并在提交过程中跟踪表单的操作

我相信还有很多,但这些是最基本的。但这些并不是特定于PHP的

编辑#1:

这可能超出了您的问题范围,但跟踪不一定意味着数据进入内部。例如,在文章或页面中添加“喜欢”或“digg it”按钮。这将“记录”你的受欢迎程度。你可以去facebook或digg.com查看你网站的进展情况。这也将有助于搜索引擎优化。基本上,这是一个跟踪系统。而且很容易使用。有一些PHP代码片段可以复制并粘贴到代码中。如果你有WordPress,有一个插件-只需在插件搜索部分查找“digg”,“喜欢它”

回到Google Analytics,如果你想超越跟踪点击的范围,那就去做目标/漏斗吧。它将跟踪用户行为,并回答诸如“我最有价值的关键词是什么?”“我的用户都到哪里去了?”“每个页面的跳出率是多少?”“我的网站的前3个入口点是什么,来自什么交通媒介?”这些都是SEO/SEM经理最关心的问题。跟踪和理解这件事绝对是件好事

ClickTale从谷歌分析的终点开始。GA将在页面级别描述用户行为,但不在字段级别。具有热图的ClickTale将回答以下问题:“我知道这个页面的跳出率很高,但为什么?哪个字段对我的客户来说是个问题?”“用户大部分时间都花在页面的哪个区域?”“我如何向图形人员证明某个特定部分需要重新设计?”

编辑#2


对于高流量站点,您需要扩展日志数据库。当涉及到报告时,它真的很有帮助。我建议采用三层数据库报告结构。第1层=过去7天,第2层=过去6个月,第2层=所有。您可以根据业务情况对其进行修改。关键是,数据从一层移动到另一层。保持新数据随时可用。您希望尽快生成报告。一个巨大的分贝根本无法扩展

您可以通过记录用户正在使用的路径referer-->new uri来监视用户单击,前提是这两个路径都足够详细和描述性。例如,如果用户单击其朋友之一,则应记录URI:

Referrer: /users/41251
Target: /users/66257
正确存储它们以便于查询和报告。在这里,像这样的直接点击会假设目标在推荐人的页面中,朋友也是。如果您有更复杂的场景,请务必使用不同的URI来描述它们,例如:
/users/suggestion/14152
用于建议的连接

加上时间戳,你就可以非常粗略地估计出他们在每个页面上停留的时间,尽管用户往往会失去注意力,切换标签/应用程序,然后返回,等等。谷歌分析(Google Analytics)就是其中之一


有关用户使用热图在您的站点上单击最多的位置的摘要,我喜欢免费(GPL)。

请查看您进行日志记录的前端,以下是一些您可能会发现有用的PHP代码示例:

就架构而言,Scribe具有很大的灵活性。我建议在每个应用程序节点上运行一个本地Scribe实例,并将应用程序日志本地记录到localhost。这些本地Scribe实例可以依次配置为在中心Scribe服务器不太忙时登录到中心Scribe服务器,否则它们将继续在本地排队等待消息。实际上,您使用的是中央服务器上的日志,这些日志是按类别聚合的


我是Scribe的忠实粉丝,我认为它设计得很好,因为它的内存和处理器占用空间非常小,而且配置起来也很容易(尽管由于依赖关系,它很容易安装!)。它只是缺少文档。

不确定,但只需在谷歌上搜索“事件驱动架构”这一术语周围的关键字,我希望看到您在这个答案中添加更多内容(特别是因为您迄今为止做得很好)。时间不多了,我就授予了奖金,但我坚持投票赞成/接受,因为我完全相信你可以改进这个答案。首先,感谢你的奖金。第二,我现在会添加一些,以后会添加更多(我现在已经很晚了)。请看我的编辑。