V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zhengnanlee
V2EX  ›  Raspberry Pi

树莓派 APM 应用性能监控

  •  
  •   zhengnanlee · 2015-08-16 23:18:16 +08:00 · 7761 次点击
    这是一个创建于 3412 天前的主题,其中的信息可能已经有所发展或是发生改变。

    起因

    正需要监控树莓派的运行状态,试过New Relic但是因为需要付费所以没能继续使用。碰巧在v2ex上碰到了OneAPM的产品,一些小项目的Django网站架在树莓派上,还有一些用Python写的RPi.GPIO的项目都可以一并监测了。另外,ARM服务器是个新兴的领域,面向个人和轻应用,数量大且门槛低,开发ARM服务器性能探针是很高瞻远瞩的。

    Django项目配置

    由于我将OneAPM的应用程序探针Application Insight安装在Raspberry Pi树莓派上,所以需要对树莓派的相关环境进行配置。关于树莓派请移步这里

    首先安装pip

    $ sudo apt-get install python-pip
    

    然后安装Django

    $ sudo pip install django
    

    安装好Django即可运行以下命令启用服务器

    $ python manage.py runserver
    

    然后可以在本地回环中看到测试网页,本地回环的网址为

    http://localhost:8000

    OneAPM探针配置

    按照官方提示安装,这里仅做搬运

    • 注册OneAPM账号并获取授权编号
    • 下载OneAPM Python Agent安装程序
    • 运行安装指令
    unzip OneAPM_python_Agent_latest.zip
    cd OneAPM_python_Agent_latest/
    python setup.py install
    

    注:zip包名称根据所下载的包来更改

    • 生成配置文件 在应用程序根目录下执行配置文件生成指令
    blueware-admin generate-config XXX blueware.ini
    

    注:XXX为授权编号

    • 重新启动应用
    sudo BLUEWARE_CONFIG_FILE=blueware.ini blueware-admin run-program python manage.py runserver
    

    OneAPM体验

    按照以上步骤即可设置好树莓派的AI探针的环境。登录OneAPM的官网,即可看到性能监视器界面。

    OneAPM AI性能监测概览

    在这个界面中可以看到概览信息,将鼠标指针移动到时间点上即可看到在一定的时间范围内的应用程序的信息。我在Django写的Blog中添加了几篇文章,具体的性能分析如下

    OneAPM Web事务监测

    可以看到,django.contrib.admin.options:add_view这个Function占用了响应时间的近40%,是拖慢响应速度的瓶颈。在窗口的右边还可以看到各个Function所占响应时间随时间的变化图,有助于分析不同时间段的各个Function的响应水平。

    OneAPM 数据库监测

    在数据库性能监测中,各个应用所占时间相差不大,可认为不存在性能瓶颈。或者说性能瓶颈在于CPU/IO。

    OneAPM 服务器环境

    在服务器环境概览中可以看到,Application Insight探针运行在了树莓派上。

    使用感受

    1. 即便在树莓派这样的低运算能力平台上,探针(Python)的存在也是近乎察觉不到的,这说明了探针开发的高效
    2. Web端做得很棒,一目了然。如果能够加上一些细化的分类就好了。比如:对于django的数据库读写来说--例如图3--是可以看出Django对于数据库哪一张表读取最多的,那么性能瓶颈更可以细化到,针对数据库的表的优化。具体来说:如果表的构建导致某一张表频繁读取,那么可以试着拆分这张表并行地运行在磁盘阵列上;亦可以改变所存储的数据类型,拆分之,将其符合磁盘簇的大小。
    3. 响应时间与吞吐量这两个图有时看起来是类似的,所以第二张图有些冗余
    4. 自定义事物还没完善
    5. 报警设置还可以提供短信、邮件等方式的提醒
    11 条回复    2017-11-02 15:12:07 +08:00
    reeco
        1
    reeco  
       2015-08-16 23:35:44 +08:00 via iPhone
    不错,改天试试
    abelyao
        2
    abelyao  
       2015-08-17 02:39:17 +08:00
    界面不错,很漂亮
    zts1993
        3
    zts1993  
       2015-08-17 08:58:19 +08:00
    看上去不错,就是你们不要老是打电话骚扰新注册用户就好了
    zhengnanlee
        4
    zhengnanlee  
    OP
       2015-08-17 09:44:58 +08:00
    @zts1993 额。。我并不是那个公司的员工,这也仅仅是一个体验报告
    zhengnanlee
        5
    zhengnanlee  
    OP
       2015-08-17 09:45:12 +08:00
    @abelyao 哈哈,我觉得也是
    zhengnanlee
        6
    zhengnanlee  
    OP
       2015-08-17 09:45:24 +08:00
    @reeco 哈哈,好~
    rockdai
        7
    rockdai  
       2015-08-17 11:23:56 +08:00
    有点意思,晚上回去试试。
    publicID001
        8
    publicID001  
       2015-08-17 12:28:33 +08:00 via Android
    zhengnanlee
        9
    zhengnanlee  
    OP
       2015-08-17 16:03:00 +08:00
    @rockdai ^_^
    zhengnanlee
        10
    zhengnanlee  
    OP
       2015-08-17 16:03:13 +08:00
    @publicID001 又有人写软文了是么。。
    wujunze
        11
    wujunze  
       2017-11-02 15:12:07 +08:00
    不错不错 改天试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2919 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 14:41 · PVG 22:41 · LAX 06:41 · JFK 09:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.