【gRPC】如何便捷的调试gRPC程序】的更多相关文章

前言 gRPC是一款广泛应用的rpc框架,因为基于C/S架构,服务启动之后,需要编写对应的客户端才能调用,调试起来相对麻烦一些,这里主要介绍一下如何通过swagger-ui来调试grpc服务. grpc-swagger gRPC-swagger 是基于 gRPC 反射开发的一款 gRPC 调试工具,可以使用 swagger-ui 方便地展示和调用 gRPC 方法.因为 gRPC-swagger 是基于反射开发,所以使用时无需修改 proto 及相关的代码实现,只需在启动服务时开启反射功能(不只j…
前言 相信大家接触过不少node代码了,如果你应用的比较初级或者针对你的项目不需要接触过深的node代码,也许你仅仅需要简单的console.log('your variable')就完全满足你的需要了.如果你应用node比较深入,想要调试(debug)之,我想你应该接触过node-inspector,大致用法流程,简单如下—— 1.安装:npm install -g node-inspector 2.启动debug模式(单独命令行): node-debug &(该命令默认8080端口) nod…
本文使用commons-pool2来实现连接池应用 1.定义一个产生连接池的工厂,需要继承BasePooledObjectFactory,其用处是生产和销毁连接池中保存的对象.根据需求,现在池子里保存的应该是grpc客户端对象. GrpcClientFactory类: package com.oy.grpc; import org.apache.commons.pool2.BasePooledObjectFactory; import org.apache.commons.pool2.Poole…
Linux程序开发变得越来越多,越来越多的程序.产品需要跨平台,甚至有些开源项目只支持Linux平台,所以掌握Linux开发变得越来越重要. 但是对于习惯了Windows下的开发,使用了VS这个宇宙第一IDE后,觉得Linux下的纯命令行开发调试,还是有些不习惯,效率有些低(大神除外).那么能不能用VS来开发调试Linux程序呢,经过各种查找,找到了VisualGDB这个神奇的插件,通过VS+VisualGDB就可以编译调试Linux程序. 下面我们来看一下创建demo的过程吧. 配置虚拟机 V…
使用未付费的苹果开发者账号真机调试 iOS 程序,过几天后程序一打开就会闪退.   解决办法: 删除 Provisioning Profile,重新配置一次. 终极解决办法:花钱购买苹果开发者账号. 参考: https://www.zhihu.com/question/35394772   2016年12月6日 在 Xcode 中是可以看到证书的期限的,1周的时间,如下:  …
Gdb调试多进程程序 程序经常使用fork/exec创建多进程程序.多进程程序有自己独立的地址空间,这是多进程调试首要注意的地方.Gdb功能强大,对调试多线程提供很多支持. 方法1:调试多进程最土的办法:attach pid Attach是调试进程的常用办法,只要有可执行程序以及相应PID,即可工作.当然,为方便调试,可以在进程启动后,设定sleep一段时间,如30s,这样即可有充足的时间来attach. 方法2: set follow-fork-mode child + main断点 当设置s…
以自己常用的 PhpStorm 为例 第一步:下载安装 Go插件 File -> Settings -> Plugins -> 输入关键字:Go 第二步:新建 Go项目 File -> New Project -> 选择“Go” 特别注意: 新建 Go项目时,一定要通过上述方式建立,而不能通过 “直接打开现有文件夹” 的方式建立,因为这种方式建的是 PHP 项目.不然,Go 的智能提示等功能都失效! 第三步:新建 Go 文件 New -> Go File 第四步:运行/…
pdb是python内置的调试工具, 它可以在终端中调试Python程序, 这允许pdb在很多无法安装IDE的服务器上使用. 虽然远程调试使用广泛, 但在必要的时候(比如难以在本地搭建运行环境)pdb仍然是一个便利的选择. 我们可以在python源代码中设置断点: import pdb def func(): for i in range(100): pdb.set_trace() # set breakpoint print(i) 随后执行源文件, pdb.set_trace()会如同一个断点…
下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip, 不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0-vs2010.exe,这些版本都只是动态编译的,不是我们 所需要的.只有用源码包才能做真正的纯静态编译,如果用Qt官网已编译的标准库.exe文件进行编译,有可能出现各种错误,而且编译后的文件巨大,我当时 就在这里绕了很大的弯子,请童鞋们注意啦!!可能有些老鸟会笑话,但我本着最严肃的态度告诉菜鸟们,…
1.简介 GDB是GNU开源组织发布的一个强大的UNIX下的程序调试工具.如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.同时GDB也具有例如ddd这样的图形化的调试端 2.调试C/C++程序 直接上代码了 #include<iostream> using namespace std; long factorial(int n); int main() { int n(0); cin>>n; long val=factoria…
使用 GDB 调试多进程程序 GDB 是 linux 系统上常用的调试工具,本文介绍了使用 GDB 调试多进程程序的几种方法,并对各种方法进行比较. 3 评论 田 强 (tianq@cn.ibm.com), 软件工程师, IBM中国软件开发中心 2007 年 7 月 30 日 内容 在 IBM Bluemix 云平台上开发并部署您的下一个应用. 开始您的试用 GDB 是 linux 系统上常用的 c/c++ 调试工具,功能十分强大.对于较为复杂的系统,比如多进程系统,如何使用 GDB 调试呢?考…
今天把android的开发环境从windows平台切换到了ubuntu上. java jdk android-adt android-ndk都下好,环境变量都配好之后, 在调试程序的时候,出现设备没有权限访问,在shell中输入adb devices 出现 ?????    no permittion 一看这个,就蒙了.在网上谷歌百度了半天, 出现的答案,感觉大家都是copy过来的,不了解如何真正的去解决这个 问题,也许这些解决方法在某些情况下,有效,而我拿过来,在我这里 完全没有用. 没办法了…
tomcat远程调试: 1.Linux中配置tomcat在catalina.sh中添加如下CATALINA_OPTS="-Xdebug  -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"(不要换行,要在同一行) 2.Window中修改 catalina,bat文件,添加: Set  "CATALINA_OPTS=-Xdebug  -Xrunjdwp:transport=dt_socket,addres…
转:使用gdb调试多线程程序总结 一直对GDB多线程调试接触不多,最近因为工作有了一些接触,简单作点记录吧. 先介绍一下GDB多线程调试的基本命令. info threads 显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID. 前面有*的是当前调试的线程. thread ID 切换当前调试的线程为指定ID的线程. break thread_test.c:123 thread all在所有线程中相应的行上设置断点thread apply ID1 ID…
WinDbg支持以下三种类型的命令: ·        常规命令,用来调试进程 ·        点命令,用来控制调试器 ·        扩展命令,可以添加叫WinDbg的自定义命令,一般由扩展dll提供这些命令 PDB文件 PDB文件是由链接器产生的程序数据库文件.私有PDB文件包含私有和公有符号,源代码行,类型,本地和全局变量信息.公有PDB文件不包含类型,本地变量和源代码行信息,且只包含共有成员的调试信息. Dump文件 利用Dump工具,你可以获得进程的快照信息.一个mini-dump…
1.下载安装xdebug 先从xdebug官网下载对应php版本的xdebug组件,下载地址是:http://www.xdebug.org/download.php 如果不确定下载哪个版本的xdebug,请访问这个网站http://www.xdebug.org/wizard.php,按照提示在你本地服务器上运行phpinfo()函数,并将该函数的输出内容复制到网页的文本框中提交,这个网页将会告诉你下载哪个文件及安装方法.     将下载的xdebug dll 文件复制到php安装目录的ext扩展…
Debugging with GDB http://www.delorie.com/gnu/docs/gdb/gdb_25.html GDB调试多线程程序总结 一直对GDB多线程调试接触不多,最近因为工作有了一些接触,简单作点记录吧. 先介绍一下GDB多线程调试的基本命令. info threads 显示当前可调试的所有线程,每个线程会有一个GDB为其分配的ID,后面操作线程的时候会用到这个ID. 前面有*的是当前调试的线程. thread ID 切换当前调试的线程为指定ID的线程. break…
阿里核心系统团队博客 http://csrd.aliapp.com/?tag=pstack Linux下多线程查看工具(pstree.ps.pstack) http://www.cnblogs.com/aixingfou/archive/2011/07/28/2119875.html http://blog.csdn.net/nancygreen/article/details/14226925 先介绍一下GDB多线程调试的基本命令. info threads 显示当前可调试的所有线程,每个线程…
在Eclipse开发工具中调试程序的方法很多,但是使用Eclipse调试Android程序时需要注意一些细节上的问题.许多刚接触 Android的开发者,在调试Android程序时总是不能迅速地找到程序的错误所在,Eclipse+ADT的开发环境中没有直接跟踪对象内容的方法,但是我们可以使用Google提供的ADT插件DDMS(Dalvik Debug Monitor Service)在Eclipse上轻松地调试Android程序. DDMS为我们提供了很多功能,例如:测试设备截屏,针对特定的进…
一.环境描述 Eclipse IDE for C/C++ Developers version 4.4.0 MinGW  gcc/g++ version 4.8.1;gdb version 7.6.1 二.操作步骤 1.新建工程 2.编译源程序 3.调试设置 Run-->Debug Configurations-->Debugger,设置调试器目标 4.启动调试 三.说明 windows下Eclipse调试C程序时,会出现无法使用printf和scanf的情况:console没有输出.原因是由…
  1.新建一个web工程,请选中最下面一项:Web App Debugger executable,Coclass name我们设为demo1: 2.在弹出的WebModule2中右击,在弹出的Action编辑框中新建一个webaction,选中,设置Default属性为True,在其onaction事件中编写如下代码,输出一个仅显示‘hello,dephi!’的html页: 3.请先运行一遍,向Web服务器注册: 4.设置断点,运行: 5.点击Tools->Web App Debugger:…
1.工具介绍 IDA pro: 反汇编神器,可静态分析和动态调试. 模拟机或者真机:运行要调试的程序. 样本:自己编写NDK demo程序进行调试 2.前期准备 2.1  准备样本程序(假设已经配置好NDK环境) 新建目录mytest,在mytest新建目录jni,jni目录下有Android.mk配置文件和mytest.c源码文件 mytest.c: #include <stdio.h> int main(int argc, char *argv[]) { int i; ; i < ;…
调试应用程序(Debugging Applications)¶ Phalcon中提供了提供了几种调试级别即通知,错误和异常. 异常类 Exception class 提供了发生错误时的一些经常使用的调试信息如文件,行,消息,错误代码,跟踪信息等. Phalcon主要使用这个异常类来包装这些功能,以方便开发人员或用户使用. 虽然Phalcon是使用C语言书写的.但其依旧如其他的PHP框架般提供了一些必须的调试工具.PHP本身提供的调试工具亦然能够正常使用. 捕获异常(Catching Except…
原文:http://blog.sina.com.cn/s/blog_68e753f70100r3w5.html 真机调试iphone应用程序 1.真机调试流程概述 1)       真机调试应用程序,首先需要有一个苹果开发者帐号,才可创建证书请求CSR: 2)       打开应用程序钥匙串访问(keychain access)请求证书: 3)       登录iDP Portal “certificates”栏目中提交证书请求: 4)       确认提交后,刷新页面自动生成.cer文件,将它…
下载源代码,注意一定是源码压缩包如qt-everywhere-opensource-src-4.8.0.zip,不是Qt发布的已编译的不同版本的标准库如qt-win-opensource-4.8.0-vs2010.exe,这些版本都只是动态编译的,不是我们所需要的.只有用源码包才能做真正的纯静态编译,如果用Qt官网已编译的标准库.exe文件进行编译,有可能出现各种错误,而且编译后的文件巨大,我当时就在这里绕了很大的弯子,请童鞋们注意啦!!可能有些老鸟会笑话,但我本着最严肃的态度告诉菜鸟们,上网查…
环境: ZeroBrane Studio安装在Windows 7上,而要调试的程序运行在CentOS上: 设置: 在windows 7上,打开ZeroBrane Studio,打开需要调试的文件,例如test.lua 然后选择Project -> Start Debugger Server,Output中可以看到Debugger server started at WIN:8172, 然后点击行号后面设置断点. 在CentOS上,需要先安装ZeroBrane Studio,安装成功后设置环境变量…
WinDBG调试.NET程序示例 好不容易把环境打好了,一定要试试牛刀.我创建了一个极其简单的程序(如下).让我们期待会有好的结果吧,阿门! using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { int a; stri…
别的OD就可以,我自己整合过的一个很顺手的OD就是不行,最后找到了解决办法: 转自:http://bbs.pediy.com/showthread.PHP?t=97629 --------------------------- 注入的代码无响应 --------------------------- 为了执行系统不支持的动作, OllyICE 在这个被调试的程序中注入了一点代码, 但是经过5秒仍未收到响应. 您想再等5秒吗? (如果您选择否, 程序的一致性及稳定性将无法保证,您应一有可能就重新启…
flex chrome浏览器调试出现空白的解决方法: 1,为chrome安装flash player,禁用chrome自带的flash player:参考:http://www.jb51.net/article/46592.htm 2,按F11调试flex程序 ,才可以进行打印调试信息: 3,修改默认打开的浏览器:窗口->首选参数(Preferences)->综合General->浏览器(Web Browser): 4,chrome必须安装debugger版本才可以进行调试: 为安装ch…
采用FirePHP调试PHP程序 FirePHP是什么? FirePHP是一个利用Firebug console栏输出调试信息方便程序调试.这一切只需要调用几个简单的函数. 他看起来是怎么个样子? 1 <?php 2 3 FB::log('Log message'); 4 FB::info('Info message'); 5 FB::warn('Warn message'); 6 FB::error('Error message'); 7 8  ?> 为什么要用它?在开发环境下正常运行的程序…