<深入剖析Nginx> nginx的跟踪与调试
来源:互联网 发布:小米批量卸载软件 编辑:程序博客网 时间:2024/05/01 05:58
通过调试,可以方便地定位问题,解决bug.
本文主要总结书里提到的内容,具体细节,会慢慢更新,因为细节是在慢慢阅读中经历的.
跟踪与调试,主要分了6个部分:
1. 利用GDB调试:
具体调试方法可以参考: Nginx学习之十四-GDB调试Nginx初试 ,以及<深入剖析Nginx>的作者的博客:点击打开链接
其实,通过上一节的方法,可以很方便的通过eclipse来调试代码,当然gdb通过命令行更加的灵活.
带参数,进入gdb调试:
gdb --args ./nginx -c /home/zy/code/web/nginx-1.6.2/conf/nginx.conf进去之后,就是打断点/单步调试/设置观察点等具体调试技术了.
2. 利用日志信息跟踪Nginx:
我们知道printf是小型程序的打印功能函数,但是当程序大型之后,printf就不那么灵活了. 因此大型的系统都会提供不同级别的输出控制. 比如linux内核/NS3网络仿真工具等等.在配置文件中设定日志信息的目录和级别.然后在程序里调用ngx_log_xxx()系列函数就可以了.
3. 利用strace/pstack调试程序:
通过这两个命令可以查看应用程序在运行过程中所发起的系统函数调用和动态库函数调用. 然后,pstack本身也就是一个利用gdb实现的shell脚本.
4.加桩调试:
一个单元测试的概念,比如我们写某个算法实现了一个函数,为了验证它的正确性,就需要在main函数里构造输出并打印输出这些,这些额外的测试代码就是加桩测试.并且eclipse中也可以进行加桩测试:点击打开链接
5. 特殊应用程序测试:
自己写socket通信的客户端去测试某些只有在特定情况下才会执行到的代码
1 0
- <深入剖析Nginx> nginx的跟踪与调试
- Nginx 源码学习(一) nginx的跟踪与调试
- 深入剖析nginx时间缓存
- 深入剖析Nginx时间缓存
- 深入剖析nginx时间缓存
- Nginx 的线程池与性能剖析
- nginx安装与调试
- nginx配置与调试
- 深入剖析nginx平滑重启
- 调试 Nginx 的配置
- nginx的gdb调试
- Nginx安装与配置、调试
- <深入剖析Nginx> 编译安装nginx 以及使用eclipse编译开发nginx
- debug Nginx,调试Nginx
- Nginx模块开发与原理剖析(2013)
- 深入理解PHP之:Nginx 与 FPM 的工作机制
- 深入Apache与Nginx的优缺点比较详解
- 深入Apache与Nginx的优缺点比较详解
- 网络基本功(十三):细说Linux网络配置(下)
- Majority Element
- 一种基于消失点的单幅未校图像测量新方法
- Unity插件-AutoTileSet介绍
- linux网络协议栈1
- <深入剖析Nginx> nginx的跟踪与调试
- C++中的类型转换
- 实例112:获取某个指定网页的HTML源码
- 动作类CCAction
- JSTL在eclipse中的配置
- jQuery表单操作学习
- linux 等待队列 与linux 等待队列头关系-不懂linux驱动阻塞操作可以看看
- String类的功能
- 编程新手的感悟