Stored procedures VoltDB存储过程历史记录

Stored procedures VoltDB存储过程历史记录,stored-procedures,voltdb,Stored Procedures,Voltdb,我有很多存储过程在Volt中运行,似乎其中有一个会时不时地导致CPU峰值,但我不知道是哪一个 是否有某个地方可以查看所有运行的存储过程的历史记录,以便根据发生的时间确定有问题的存储过程 我试着打开命令日志,但它是一个二进制文件,所以我没有办法读取它 我的下一个选择是从存储过程内部登录,但我更愿意将此选项作为最后手段,因为它将需要一些额外的开发/部署,并且与内部过程无关 是否有任何方法可以记录/以某种方式查看存储过程何时运行?VoltDB中没有用户可以查看的每个事务的日志。命令日志并不意味着可读,

我有很多存储过程在Volt中运行,似乎其中有一个会时不时地导致CPU峰值,但我不知道是哪一个

是否有某个地方可以查看所有运行的存储过程的历史记录,以便根据发生的时间确定有问题的存储过程

我试着打开命令日志,但它是一个二进制文件,所以我没有办法读取它

我的下一个选择是从存储过程内部登录,但我更愿意将此选项作为最后手段,因为它将需要一些额外的开发/部署,并且与内部过程无关


是否有任何方法可以记录/以某种方式查看存储过程何时运行?

VoltDB中没有用户可以查看的每个事务的日志。命令日志并不意味着可读,它只包含写操作。但是,您可以使用一些工具来识别性能较差或长期运行的过程

您可以调用exec@Statistics PROCEDUREPROFILE 0;获取已执行的所有过程的摘要,包括调用次数和以纳秒为单位的平均执行时间。如果某个特定的程序是问题所在,它可能会突出

您还可以grep volt.log文件,因为短语“正在花费很长时间”,这是当过程或SQL语句的执行时间超过1秒时打印的消息

此外,工具子目录中还有一个名为watch_performance.py的脚本,可用于监视性能。类似于调用exec@Statistics PROCEDUREPROFILE 0;每隔一定的时间,除了从其他@Statistics选择器收集的一些列之外,输出的格式是可读的/watch_performance.py-h将输出帮助和使用信息。例如,您可以在性能加载期间运行此命令,以了解工作负载的情况。或者,您可以在较长的时间段内运行它,也许是以较少的粒度间隔运行,以查看工作负载随时间的波动

披露:我为VoltDB工作