项目中换上了 PHP 最新的mongodb驱动,但这个驱动只是原生接口的一层包装,有些命令甚至要用executeCommand构造,像下面要讲到的aggregate方法。

第一次封装 Infrastructure\Mongodb 后的aggregate代码如下,我也不知道怎么写,网上也没找到 用executeCommand 构造 aggregate时应该怎么传参数,

这是调用封装后 aggregate函数的客户端代码,看起来应该是对的,都是模仿mongo控制台aggregate命令的写法。

当然就执行出错了,抛出下如下异常,不知道它说什么。

那就换个角度看看问题是怎么发生(做了些什么?),先看日志,看到日志,mongodb执行的是如下命令,还有参数

再用正确的方式,触发一下,看一下mongodb 执行的命令和参数。

在mongo控制台执行的命令当然就是正确的咯。

这次通过日志看到mongodb的执行命令和参数,原来,不同阶段的操作数是赋值给 pipeline 属性,aggregate属性传的是 collectionName

第二次改动后的代码如下,正解运行了。

当你不知道怎么入手解决问题时,可以先探索一下问题是怎么发生的。

转载于:https://www.cnblogs.com/lihuobao/p/5967250.html

mongodb 日志,(一个看日志解决新问题的方法) -- clwu相关推荐

  1. 一个perfect 的解决 阴影拉伸的方法 shadow map strech

    因为在场景中做了,有的物体产生阴影比如人物,有的物体不产生阴影比如地面,这样在地面凹下去的地方,悬崖,池塘边,就会有阴影的拉伸. 实际上, 没办法上传图片.... L是光源 A 点(人物身上)产生阴影 ...

  2. Oracle 18.3 : 透过告警日志从安装初始化过程看 18c 的新改变

    Oracle Database 18c 已经正式对外发布,第一个公共版本的版本号是 18.3 ,让我们从 18.3 的安装过程来一睹 18c 的改变. 首先我们看看版本,18c 发布的第一个版本是 1 ...

  3. 【转自猫扑】被别人破解的一个男人日志。很值得一看!

    [转自猫扑]被别人破解的一个男人日志.很值得一看! 7月7日  我知道我不算帅哥,但曾经有人看我满月的照片时,也说过我左边的鼻孔很偶像派.  8月30日  独守空房,让人只能浪费:妻妾成群,让人懂得节 ...

  4. Spring Boot 搭建 ELK,这才是正确看日志的方式!

    点击关注公众号,Java干货及时送达 作者:JingQ 来源:https://www.sevenyuan.cn 在看大型网站的中间件技术,对于Elasticsearch有点兴趣,所以将配置流程记录了一 ...

  5. Linux 学会看日志文件处理问题

    rsyslog是一个进程,是一个命令.管理日志的.–>系统日志记录器 它有一个配置文件:/etc/rsyslog.conf 自己创建日志时,要修改该配置文件. 日志的作用: 用于记录系统.程序运 ...

  6. 如何分析和研究Log文件 ,如何看日志信息

    如何分析和研究Log文件 ,如何看日志信息 . Log 在android中的地位非常重要,要是作为一个android程序员不能过分析log这关,算是android没有入门吧 . 下面我们就来说说如何处 ...

  7. Spring Boot 配合搭建 ELK,这才是正确看日志的方式!

    作者:JingQ 来源:https://www.sevenyuan.cn 在看大型网站的中间件技术,对于Elasticsearch有点兴趣,所以将配置流程记录了一下. 为什么要用ELK " ...

  8. 手写logback_springboot logback调整mybatis日志级别无效的解决

    springboot logback调整mybatis日志级别无效的解决 现象 在日志配置文件 logback-spring.xml 中,无论怎么修改级别,mybatis 的 sql 日志都会打印出来 ...

  9. cx_oracle写日志信息_看日志痛苦——可能是你方法不对

    看日志,是研发的日常工作,相信你已经从各种报错日志中查出许多BUG,但也被冗长.复杂的日志困扰过无数次. 在日常工作中,我也经常痛苦于看日志,一般是这些日志长得面目狰狞: 日志文件太大,打开都很困难 ...

  10. 开源:如何优雅的实现一个操作日志组件

    1. 背景 日志几乎存在于所有系统中,开发调试日志的记录我们有log4j,logback等来实现,但对于要展示给用户看的日志,我并没有发现一个简单通用的实现方案.所以决定为之后的开发项目提供一个通用的 ...

最新文章

  1. 2021-09-23对图像深入研究
  2. ner pytorch project code
  3. 「杂谈」AI工业界都有哪些值得参加的比赛?
  4. 数据库学习day_01:SQL的发展和数据库操作相关sql语句
  5. matlab中矩阵的各种分解
  6. 【转】玩转git分支
  7. 【Libevent】Libevent学习笔记(一):简介和安装
  8. JVM从入门到精通(一):JVM入门级class文件格式
  9. ajax获取数据用弹窗显示_Vue之 点击返回弹出推荐商品弹窗
  10. golang操作postgresql数据库jsonb类型
  11. 卸载oracle9i精简版,oracle9i精简客户端|oracle9i客户端精简版下载_红软基地
  12. StringUtil.isEmpty()和StringUtil.isBlank()的区别
  13. ubuntu18.04安装谷歌拼音输入法(Google Pinyin)
  14. vue2实现电商后台管理的思路
  15. 耦合矩阵 matlab,耦合矩阵变换(化简)的问题
  16. 安装dataX的问题,com.alibaba.datax.common.exception.DataXException: Code:[Common-00], Describe
  17. Effective Java(第三版) 学习笔记 - 第六章 枚举和注解 Rule34~Rule41
  18. 易语言-post登陆百度
  19. Python 列表,for循环,元组的使用(修改、添加、删除、排序、切片)
  20. 图像处理之opencv库使用小结

热门文章

  1. mount -t iso9660 /dev/cdrom /mnt
  2. 蓝桥杯-明码 bitset初识
  3. ubuntu20.x安装 podman
  4. Java SE 基础:List 集合列表
  5. spring较为常用注解
  6. 阶段3 1.Mybatis_07.Mybatis的连接池及事务_3 mybatis连接池的分类
  7. java学习笔记④MySql数据库--01/02 database table 数据的增删改
  8. python学习笔记(xlsxwriter模块使用)
  9. 【Python】使用torrentParser1.02对单文件torrent的分析结果
  10. 背包九讲-第三讲 多重背包