
发表日期: 2021-04-26 10:53:27 浏览次数:100
溧阳400电话办理【溧阳网站公司】溧阳百度优化、溧阳域名注册、溧阳网店美工、溧阳微信公众号托管
溧阳,隶属江苏省,由常州市代管的县级市 ,位于江苏省西南部,地处长江三角洲,与苏、浙、皖三省接壤。是南京都市圈成员城市 [1] ,宁杭生态经济带上的重要副中心城市和示范区。位于北纬31°09'-31°41',东经119°08'-119°36',东邻宜兴,西与高淳、溧水毗邻,南与安徽省的广德、郎溪接壤,北接句容、金坛,南北长59.06千米,东西宽45.14千米,土地总面积1535.87平方千米。 [2] 溧阳属亚热带季风气候,干湿冷暖,四季分明,雨量充沛,无霜期长,全年平均温度17.5℃,其中:一月份3.2℃,七月份31.1℃。年均降水量1149.7毫米。其中,一月份42.2毫米,七月154.1毫米。大约日照时间,一月份137.6小时,七月份229小时。 [3]
溧阳有耕地面积112万亩,林地32.8万亩,河流和湖泊42.6万亩。物产丰富,是著名的“鱼米之乡”、“丝绸之乡”、“茶叶之乡”,经济连续多年名列全国百强县(市)。溧阳文化属吴越文化,溧阳人属江浙民系使用吴语。盛产稻、麦、油、茶、蚕茧、螃蟹、板栗、西瓜、毛竹等。 [4] 2020年10月9日,被生态环境部命名为第四批“绿水青山就是金山银山”实践创新基地。2020年11月,入选水利部第一批深化小型水库管理体制改革样板县(市、区)名单。2020年12月,社科院发布《全国县域经济综合竞争力100强》,溧阳排名第25 [5] 。
业务纪录日志,是指纪录业务上关键流程环节的操作,以便发生系统问题后进行回滚处理、问题排查以及数据统计。如在有缓存的情况下,可能数据没及时写入数据库而导致数据丢失或者回档,这里可以通过日记简单查看是否可以恢复。以及说明一下操作发生的背景或原由,如通常游戏中用户的经验值添加:
// 假设:10 + 2 = 12DI()->logger->info('add user exp', array('name' => 'dogstar', 'before' => 10, 'addExp' => 2, 'after' => 12, 'reason' => 'help one more phper'));复制代码对应的日记为:
2015-02-07 20:48:51|INFO|add user exp|{"name":"dogstar","before":10,"addExp":2,"after":12,"reason":"help one more phper"}复制代码但当哪天我们看到以下的LOG是就会发现系统存在隐藏的BUG:
// 居然:10 + 2 = 11 ?!2015-02-07 20:48:51|INFO|add user exp|{"name":"dogstar","before":10,"addExp":2,"after":11,"reason":"help one more phper"}复制代码而当用户玩家来投诉客服时,客服人员又来找到后端开发人员时,我们可以证明得了确实是系统原因造成了用户丢失1点经验值。
特别地,若我们看到以下的LOG时,不难看出有人在用非法的渠道刷取经验:
2015-02-07 20:52:35|INFO|add user exp|{"name":"dogstar","before":10,"addExp":2,"after":12,"reason":"help one more phper"}2015-02-07 20:52:35|INFO|add user exp|{"name":"dogstar","before":12,"addExp":2,"after":14,"reason":"help one more phper"}....2015-02-07 20:52:35|INFO|add user exp|{"name":"dogstar","before":998,"addExp":2,"after":1000,"reason":"help one more phper"}复制代码所幸有日记并及时发现了,随后如何处理就视具体的项目而定。但当产品来追问时,我们可以及时给出反馈和做出处理。
还有更为重要的是数据统计。这块就App数据分析和统计这块已经有了很好的第三方服务支持。但仍然可以轻松实现自己的数据统计,以便二次确认和定制化。毕竟,总是依赖第三方不是那么轻便,而且存在敏感数据安全问题。
假设提供一个简单的上报接口,如:
// $ vim ./Shop/Api/Statistics.php<?phpclass Api_Statistics extends PhalApi_Api {
public function getRules() {
return array(
'report' => array(
'username' => array('name' => 'username', 'require' => true),
'msg' => array('name' => 'msg', 'require' => true),
),
);
}
public function report() {
DI()->logger->info($this->username, $this->msg);
}}复制代码然后,客户端App在需要的场景进行埋点纪录,如用户打开应用时,请求上报服务:
http://api.phalapi.net/shop/?service=Statistics.Report&username=dogstar&msg=enter%20app复制代码
即可看到:
2015-02-07 21:01:13|INFO|dogstar|enter app复制代码
到后期,若我们需要统计用户的登录情况时,便可以这样进行数据统计每天各个用户登录的次数,从而得出用户活跃程度。
$ cat ./Runtime/log/201502/20150207.log | grep "enter app" | awk -F '|' '{print $3}' | sort | uniq -c 11 dogstar 5 King
2 Tom复制代码开发调试类日记,主要用于开发过程中的调试。用法如上,这里不再赘述。以下是一些简单的示例。
// 只有描述DI()->logger->debug('just for test');// 描述 + 简单的信息DI()->logger->debug('just for test', '一些其他的描述 ...');// 描述 + 当时的上下文数据DI()->logger->debug('just for test', array('name' => 'dogstar', 'password' => '******'));复制代码若上面的error、info、debug都不能满足项目的需求时,可以使用PhalApi_Logger::log()接口进行更灵活的日记纪录。
DI()->logger->log('demo', 'add user exp', array('name' => 'dogstar', 'after' => 12));DI()->logger->log('test', 'add user exp', array('name' => 'dogstar', 'after' => 12));复制代码对应的日记为:
2015-02-07 21:13:27|DEMO|add user exp|{"name":"dogstar","after":12}2015-02-07 21:15:39|TEST|add user exp|{"name":"dogstar","after":12}复制代码注意到,PhalApi_Logger::log()接口第一个参数为日记分类的名称,在写入日记时会自动转换为大写。其接口函数签名为:
/** * 日记纪录 * * 可根据不同需要,将日记写入不同的媒介 * * @param string $type 日记类型,如:info/debug/error, etc * @param string $msg 日记关键描述 * @param string/array $data 场景上下文信息 * @return NULL */ abstract public function log($type, $msg, $data);复制代码

服务热线
顶部
备案号: 苏ICP备11067224号
CopyRight © 2011 书生商友信息科技 All Right Reserved
24小时服务热线:400-111-6878 E-MAIL:1120768800@qq.com QQ:1120768800
网址: http://www.768800.com 网站建设:上往建站
关键词: 网站建设| 域名邮箱| 服务器空间| 网站推广| 上往建站| 网站制作| 网站设计| 域名注册| 网络营销| 网站维护|
企业邮箱| 虚拟主机| 网络建站| 网站服务| 网页设计| 网店美工设计| 网站定制| 企业建站| 网站设计制作| 网页制作公司|
400电话办理| 书生商友软件| 葬花网| 调温纤维| 海洋馆运营维护| 北京保安公司| 殡仪馆服务| 殡葬服务| 苏州殡葬一条龙| 朝阳殡葬| 苏州殡葬服务|
欢迎您免费咨询,请填写以下信息,我们收到后会尽快与您联系
服务热线:400-111-6878