![]() | 1 Vitta 2022-08-26 17:23:05 +08:00 哈哈哈哈哈哈哈哈哈哈哈哈 牛逼 |
2 quan01994 2022-08-26 17:25:15 +08:00 哈哈哈哈哈哈哈哈哈哈哈哈 牛逼 |
3 Mithril 2022-08-26 17:28:55 +08:00 ![]() 你们一公司都是人才,这不是写了 OpenResty 报的错吗。。。 |
![]() | 4 h1104350235 2022-08-26 17:29:47 +08:00 ![]() 无效沟通,和这种人做同事也是够呛的。 |
5 xiaojun1994 2022-08-26 17:29:48 +08:00 ![]() 最后的表情包不错 |
![]() | 6 a33291 2022-08-26 17:31:16 +08:00 培训班出身吗 |
![]() | 7 shakaraka PRO 哈哈哈哈哈哈。最后的表情包可以发一下吗 |
![]() | 8 Bijiabo 2022-08-26 17:34:05 +08:00 求表情包 |
![]() | 9 stroh OP ![]() |
![]() | 10 stroh OP ![]() |
11 vampuke 2022-08-26 17:43:08 +08:00 ![]() 前端就是 bug 路由器,已经习惯了 |
![]() | 12 bury 2022-08-26 17:47:11 +08:00 666 |
![]() | 500 为什么不能找前端 如果按小公司 能跑就行来说 谁最后导致的错误就找谁呀 大厂都不能做到面面俱到 偶尔也会遇到 500 页面 如果我做内部系统,出错能改前端解决的 真懒得改后端 |
![]() | 14 zhouyg 2022-08-26 17:48:29 +08:00 ![]() 哈哈笑死,以后面试还是得多检查下对于 http 的基本常识如何 |
15 Mithril 2022-08-26 17:49:29 +08:00 ![]() 盲猜一个复盘: 运营发现挂了,甩锅运维 运维瞅了一眼 Dashboard 发现所有服务都活着,甩锅前端 前端瞅了一眼发现是“Server Error”,甩锅后端 后端瞅了一眼这特么居然是个页面,我后端从来没生成过错误页面,前端说话还那么冲,自然就顶回去了。 大概是你们用了个 Nginx 做路由或者 serve 静态页面,这玩意在你前端开发用不上,但也没接到后端里。实际上应该找运维去拉一下 Nginx 的 log 。所以你找后端,他会让你去找运维。 估计是大概猜出来问题在哪了,但你这语气估计也不想多说,开怼吧。 |
![]() | 16 stroh OP @Mithril 我没截上面,上面心平气和的说明问题,上来就怼我页面问题,够客气了吧?而且我找过运维,运维说不知道让我自己解决... |
![]() | 17 YSMAN 2022-08-26 18:00:19 +08:00 这是大佬?? |
![]() | 19 JKeita 2022-08-26 18:03:50 +08:00 这种是大佬?搞笑吧。看来你们公司技术水平参差不齐啊。 |
![]() | 20 NerbraskaGuy 2022-08-26 18:08:52 +08:00 我觉得可以润了,先不管水平这么样,这么难沟通的同事工作起来也很心累 |
21 hotspotvm 2022-08-26 18:12:26 +08:00 还缺人吗 让我来搞后端 有问题第一时间排查 哈哈 |
22 l864494871 2022-08-26 18:23:52 +08:00 笑死啦 哈哈哈哈 |
![]() | 23 lawmil 2022-08-26 18:24:04 +08:00 难道不是前后端分离么?这种直接域名访问报错,都是甩给前端查。。 |
24 daimubai 2022-08-26 18:33:08 +08:00 牛逼 |
![]() | 25 aragakiyuii 2022-08-26 18:38:57 +08:00 via iPhone 服务没问题有没有可能是后台压根就没打日志 |
![]() | 26 lopda 2022-08-26 19:02:10 +08:00 via Android 最后一句说的好像没问题。可以找运维看下服务器代理可正确 |
![]() | 27 lopda 2022-08-26 19:03:22 +08:00 via Android 前端经常遇到这种情况,都习惯了 |
![]() | 28 79lawyer 2022-08-26 19:03:49 +08:00 哈哈哈前公司有个组长也叫丁丁 |
![]() | 29 rrfeng 2022-08-26 19:24:52 +08:00 其实这后端也不是全错(当然很垃圾) 这个路径确实可能不是我的服务的(所以问运维) |
![]() | 31 wolfie 2022-08-26 19:27:25 +08:00 《现在后端都这么好干吗》 可想而知你是什么水准 |
![]() | 32 Vegetable 2022-08-26 19:37:18 +08:00 ![]() 一条 curl 直接下线 |
33 neutrinos 2022-08-26 19:41:03 +08:00 via iPhone 公司盈利多不分你,盈利少就裁你,管那么多干嘛,做好本分,按专业知识笑嘻嘻回复。这是领导和 hr 的问题,招的人水平不够,不要为难你自己 |
![]() | 34 Vegetable 2022-08-26 19:41:24 +08:00 ![]() 理论上前后端分离的系统应该看不到这个页面的,这意味着静态页面就没拿到。确实不一定是后端的问题,又不是 API 抛出的 500 ,但是 500 这个页面肯定是 nginx 后边出了问题,所以这个要先找运维,确认是哪一步抛出的原始异常。 |
![]() | 35 IvanLi127 2022-08-26 19:46:47 +08:00 via Android ![]() 踢回给运维。找后端干嘛。。。。这被后端踢有点活该哦!而且有问题找前端的人是这位后端找的么?不是运维么?看这对话,这前端才是踢皮球小王子啊! |
![]() | 36 imycc 2022-08-26 19:50:00 +08:00 ![]() 哈哈哈哈,面向甩锅编程,只要不是我的错就行。不过无效的聊天内容太多了。 回到本楼主题,查 bug 不应该是这么查的。相关人员拉个群,让负责人来主持,分清楚是哪边的问题,再让具体的研发去查就好了。 |
![]() | 37 chloerei 2022-08-26 19:53:24 +08:00 ![]() 前后端分裂。 |
![]() | 38 honamx 2022-08-26 20:03:34 +08:00 看后端的意思是 URL 里是包含了某个变量吧,而这个变量是前端生成的,调用后端接口因为值有问题导致接口 500 。不是给那后端洗白,感觉楼主也没了解清楚相关业务。哈哈哈哈 |
![]() | 40 chuanqirenwu 2022-08-26 20:24:19 +08:00 后端处理问题不积极,但他说的应该还是有道理的,没有走到他负责的 java 服务,所以他不管。 |
41 stoluoyu 2022-08-26 20:26:19 +08:00 错误图太糊了,不过还真不一定是后端。 不过踢皮球确实很蛋疼,所以我比较喜欢前后端项目分离,人员不分离。 |
42 ljpCN 2022-08-26 20:32:01 +08:00 真不一定是后端,如果做了前后端分离,不至于整个页面 500 ,整个页面 500 很可能是网关层出错。 |
![]() | 43 zoharSoul 2022-08-26 20:45:03 +08:00 via Android 从描述来看他说的估计是对的,你没看懂他想表达的意思 |
![]() | 44 pengtdyd 2022-08-26 20:58:22 +08:00 都是人才啊,三流的领导就会待出不入流的团队!!! |
45 nbhaohao 2022-08-26 20:59:59 +08:00 蹲一手后续,到底是谁的问题... |
![]() | 46 isbase 2022-08-26 21:08:30 +08:00 高效排查问题需要好的日志和链路追踪服务 如果有链路追踪服务,出错了拿着 traceId 一键查找出错的服务。 如果没有链路追踪服务,那么按照你们公司的请求链路,从入口服务一层一层往后查日志 至于谁来查,要取决前端是怎么部署的,对于前后端分离的项目,前端独立部署的肯定要前端自己来查,500 可能是 cdn 也可能是网关也可能是其他中间服务。 如果是传统 mvc 那种前后端一体的,让后端自己搞去。 |
![]() | 47 isbase 2022-08-26 21:09:09 +08:00 如果明确是后端的问题,不用和对方废话兜圈子,不配合直接拉他老板即可 |
![]() | 48 msaionyc 2022-08-26 21:11:18 +08:00 ![]() 老实说,我觉得后端说话没有大毛病,说到一半,你那句“肯定是后端少判断,走到了代码错误的地方,报错了。。”,你能为你说的话负责吗?只要这次锅和后端没关系,以后你们组再有任何问题,他都不会再管,除非闲的。 |
49 yeqizhang 2022-08-26 21:24:07 +08:00 via Android 34 楼说的很准确。现在前后端分离,如果不是前后端分离也不会前后端分很清吧,html 直接 500 的话,这种就是找运维人员的,除非你们没运维,是后端兼的…… |
50 fox0001 2022-08-26 21:30:10 +08:00 via Android 没找到明显证据、错误信息,这样根本没法聊。 |
![]() | 51 seesky 2022-08-26 21:51:56 +08:00 没后续吗? 不会被打脸了吧? |
![]() | 52 kingjpa 2022-08-26 22:00:53 +08:00 这时候,我们这种小公司的好处就出来了, 无论是前端还是后端还是运维 甚至是阿里的服务挂了, 都会找到我头上 我还没法推。 其实我认为后端肯定知道这个问题出在哪里,只是不想费口舌和你说, 请求都没落到后端服务上,他到哪里看日志呢? |
![]() | 53 lovelive1024 2022-08-26 22:03:22 +08:00 还真不一定是谁的锅,打个比方某个参数前端传了 undifend ,那报错就没后端没啥关系了 |
![]() | 54 zhw2590582 2022-08-26 22:03:40 +08:00 前后端分裂,笑死了 |
![]() | 56 hutoer 2022-08-26 22:10:22 +08:00 我们用 flask 开发的系统,就碰到过 templates 缺少文件导致 500 错误。由于 templates 是前端维护的,所以找前端的锅,然后前端说是部署的人没同步。你看锅从 测试 -> 前端 -> 后端 -> 前端 -> 部署。 |
![]() | 57 leaves615 2022-08-26 22:16:47 +08:00 @zhouyg 最近面试很多前端,别说 http 协议了,html 怎么写都不太会了。 大前端时代,一维数组是什么都不知道。 |
![]() | 58 xmh51 2022-08-26 22:17:02 +08:00 你没有看明白后端老哥意思,别一上来就挂人,后端老哥又没有推诿,给你正确的路径了。两方意见打架别想当然。拉个群。 第一个报错的是那个是 openresty ,这个是一个类似 ngnix 的东东,又不是 java 的 tomcat 报错?你怎么确定是后端老哥的问题。 正确的做法就是找运维排查 openresty 找到对应的转发 url ,一层一层排下去。 |
![]() | 59 xmh51 2022-08-26 22:27:59 +08:00 另外说句实话,评论区也太冲了,这种 openresty 的报错一般来说都是一层一层往下的。 还是沟通的问题 前端以为的后端服务就是 java 实际上的后端服务,高防=>openresty=>k8s ingress=>java 应用。 结论:前端要么拉个群,让大家一块排查,要么多了解了解后端架构 |
![]() | 60 fantastic 2022-08-26 22:36:34 +08:00 这种不一定是后端的问题,等个后续 |
61 EminemW 2022-08-26 22:36:40 +08:00 有一说一这看起来是路径错了,跟后端关系不大啊,应该找运维查。这种情况下,就算后端加了判断不也是要报错给调用者么 |
![]() | 62 potatowish 2022-08-26 22:54:34 +08:00 via iPhone 页面报 500 很有可能是运维的锅,接口报 500 大概率是后端的锅,只能说你们这后端不太行,只要不是前端的问题,都可以找后端来排查。 |
63 r4aAi04Uk2gYWU89 2022-08-26 23:13:51 +08:00 技术广度不够,还阴阳怪气的人真多。用户水平越来越拉稀,怪不得老用户不上线了=。= |
![]() | 64 chendl111 2022-08-26 23:24:22 +08:00 应急拉人说话不要这么冲,虽然心里火气大但是打字还是要委婉一点,最后问一句:你确定是后端的问题了吗?那句”现在的后端都这么好干了吗“太伤人了,直接否定人家的职业水平和技术能力,如果最后是你错了,那你以后就别想找后端做任何事情了 |
![]() | 65 darkengine 2022-08-26 23:36:04 +08:00 看来我们这种小公司,全栈一脚踢的还是有一定优势哈 |
![]() | 66 wonderfulcxm 2022-08-26 23:43:36 +08:00 via iPhone 500 肯定是后端错误啊 |
![]() | 67 fiypig 2022-08-26 23:48:59 +08:00 via iPhone 妈的,换成我只能自己喷自己,出 500 了只能默默自己搞,真羡慕有运维有前后端的 |
![]() | 68 xmh51 2022-08-26 23:51:34 +08:00 ![]() @potatowish @wonderfulcxm 老哥们,看仔细点 500 页面是 openresty 报的。一个 api 有很长的请求链路, 答主询问的后端只是负责 java 应用。他已经指明找谁排查了,运维查询 openresty 日志定位异常来源,一级一级往下排查。 |
![]() | 69 xmh51 2022-08-26 23:58:30 +08:00 ![]() 这个问题咋会有争议的?想不明白。。不是直接从 openresty 往下追溯就行了吗?现在的前端已经不需要了解 openresty/ngnix 是啥,openresty/ngnix 怎么部署静态网页,openresty/ngnix 如何反向代理后端 api 了吗? |
![]() | 70 wonderfulcxm 2022-08-27 00:25:55 +08:00 via iPhone ![]() @xmh51 后端出错 openresty 当然是报 500 错误,你对错误码是不是有什么误解?运维可以看日志,但 500 无论如何都扯不到前端。 |
![]() | 71 garyox64 2022-08-27 01:44:59 +08:00 理想情况,出了问题和团队无关,一条请求链路 报了 500 ,一环环查就是了,不过这样就对技术栈要求都比较熟悉 甩锅角度看就是运维的锅,你就拉个群 把领导们都拉进去,让运维 帮定位好了 明明是一个简单的事,最后 经过了一大堆沟通成本以后,才有结果,感觉这就是目前很多公司的通病 人效太低了,哎 现在干活真没劲,这种破事一箩筐 |
72 < href="/member/MonoLogueChi" class="dark">MonoLogueChi 2022-08-27 01:52:58 +08:00 via Android ![]() @wonderfulcxm 为什么 500 错误扯不到前端?最简单的例子,前端路由写错了,最简单的情况是找不到页面就是 404 ,但如果规则匹配到了后端呢,抛个 500 出来不是很正常吗。这时候抛 500 错误出来的原因是啥,前端路由写错了。 |
![]() | 73 qeqv 2022-08-27 04:36:25 +08:00 额,能理解你说话时的心情,肯定是长期做 BUG 路由心理不舒服。 我猜这个后端的意思是“你正确传值就不会 500 ,虽然我代码没做纠错判断,但我懒得改” 猜的,蹲一个后续 |
74 jmk92 2022-08-27 05:03:18 +08:00 内心:我 TM 知道是后台的,可我不知道是哪的,找 BUG 你以为是一句话的事啊。让你找运维,运维也许能找到这块属于谁写的代码,那就可能不找我了 |
![]() | 75 zpf124 2022-08-27 06:54:48 +08:00 @wonderfulcxm 如果后端报 500 错,会由后端的服务器程序以自己的格式返回错误信息,对于 java 的后端而言是 tomcat 或者其他程序,而不是 openresty 的标准 500 页面。 不信的话你自己用 node 起一个服务让他访问就 500 ,然后你用 openresty/nginx 反代套一层,自己访问看一下会不会出现 openresty 的 500 页面。 |
![]() | 76 zpf124 2022-08-27 07:14:42 +08:00 ![]() 总结一下问题。 运营发现访问不了,喊运维, 运维粗查监控没有宕机,甩锅前端, 前端一看 500 错误,就觉得这是后端的错,甩锅后端。 后端一看返回的是 nginx 的页面,而且访问的还是前端的路径(聊天里说的),和我有 p 关系? 最后前端出来发帖:"现在后端都这么好干吗》" ---------------------------- 期待后续楼主出来解答一下到底谁的问题, 看看谁是真的在甩锅。 我唯一能想到的 前端项目路径报 500 还会是后端引起的情况就是 你们是 SPA 应用做了首屏服务端渲染,然后服务端渲染时调用后端 api 报错。 有人知道其他可能性的话麻烦也给我讲讲。 我初步猜测,最有可能的情况是 500 的访问链接是代码拼接生成的,但拼接了特殊符号或者什么其他内容,导致反代解析出问题; 除此外要么是 WAF 相关设置有毛病,要么反代服务器配置有问题或者写了 Lua 脚本但出 bug 了。 |
![]() | 77 elevioux 2022-08-27 07:23:12 +08:00 via Android 这个是 web 服务软件默认的错误页面,还真不一定就是后端 java 的问题。 因为后端框架通常都有异常的处理机制,500 的页面通常是框架定制的。我写 php ,用 Laravel 居多,Laravel 就有自己的 500 处理方式。 因此问题也可能出在 web 服务到 java 这一步,后端叫运维去查也不是完全没有道理。 |
![]() | 78 mysalt 2022-08-27 07:36:37 +08:00 via iPhone 为什么不拉个群呢,把几方都拉进去解决,要再解决不了就把他们领导都拉进去,直到解决为止。 |
79 neptuno 2022-08-27 08:45:28 +08:00 via iPhone 直接看控制台呀,哪个接口报错,复制接口路径和参数,然后 postman 构造用例,这才是有效沟通。 |
![]() | 80 AllenHua 2022-08-27 08:48:17 +08:00 我想看后端日志,楼主,快上 [吃瓜] |
![]() | 81 justin2018 2022-08-27 08:51:31 +08:00 想知道 到底是谁的责任~~ 这不就是摸鱼的好机会嘛 说排查了一天的问题 |
![]() | 82 kangyan 2022-08-27 09:01:59 +08:00 中野决裂了属于是 |
83 nicevar 2022-08-27 09:04:40 +08:00 这个还真不一定是后端的锅,先让运维定位一下问题才是关键,我不明白你们俩吵啥,想直接物理手段解决问题吗 |
![]() | 84 uvwlab 2022-08-27 09:15:16 +08:00 像这种情况,各方面都要自查 |
85 martinqian 2022-08-27 09:20:28 +08:00 ![]() 我怎么看着这后端态度其实还行呢,可能他觉得 UP 主这位前端很难理解这其中的机理,所以不愿意说太多,就简单指了一条路:找运维跟一下,或者找丁丁帮忙。 通常,后端返回 500 的时候,即使 body 数据没用 JSON 之类的进行编码,也不可能去添加什么 Openresty 之类的信息,所以他认为这个问题和他没关系,因为数据不是他返回的。 当然了,问题还是得 UP 主去推(因为运维在拉稀呀),一切皆有可能。 |
![]() | 86 itechify PRO 拉个群,看谁还踢皮球 |
87 yangzzzzzz 2022-08-27 09:32:36 +08:00 这个时候拉大大群就都老实了 最好领导也在里面 @全体成员 |
88 lllllliiii 2022-08-27 09:35:17 +08:00 ![]() 感觉后端老大态度很可以啊,就是这个前端一直在阴阳怪气? |
![]() | 90 lovelive1024 2022-08-27 09:42:01 +08:00 @ilylx2008 #55 那也分不同的情况,有些是后端偷懒没验证,有些参数是数值类型传 undifend 就没到验证就出错了 |
91 tairan2006 2022-08-27 10:31:08 +08:00 via Android 这个 500 页面一般确实应该找运维,跟 API 层关系不大 |
![]() | 92 Junzhou 2022-08-27 11:15:05 +08:00 大概率请求就没到他负责的 Java 服务那一层,然后又懒得跟你说太多(可能他觉得你看起来确实不怎么懂这一块,跟你说了也白说)。。。 那么大的 OpenResty 都看不到。 |
93 Huelse 2022-08-27 11:19:55 +08:00 就表现来看,这的确要找运维的,后端知道自己这边的错误页会是什么样,一看不是,那就得找运维了 |
94 GopherTT 2022-08-27 11:51:01 +08:00 前端不懂后端和背后的整个服务,500 一定就是后端的锅了?只是前端不懂分析和定位问题,其实聊天里都指出问题了。 |
95 kappa 2022-08-27 11:56:28 +08:00 ![]() 说的很明白吧,要找运维确认是路由到哪了,op 和后端中间隔了个人,不懂没关系先找运维贴配置贴日志,直接跑外网挂人以为自己水平最高? |
![]() | 96 idblife 2022-08-27 11:59:55 +08:00 via iPhone 你们运维垃圾 |
![]() | 97 yuzo555 2022-08-27 12:10:43 +08:00 “前端”不一定是指浏览器端,很多情况中间层在服务器上,跑着 OpenResty 或者 PHP ,但也算是前端,因为它不负责业务,只是把真正的后端输出的内容展示给客户端,做点负载均衡什么的,甚至还做点缓存。 就这个案例来说,不一定是中间层还是后端出的问题,确实得运维拉日志查下。 |
98 abuabu 2022-08-27 12:30:54 +08:00 ![]() ? 。。。 难不成? 那为什么? 肯定是 啊大哥 我第一次 厉害了 基本常识 明显是 句句给人加怒气 |
99 laolaowang 2022-08-27 13:04:34 +08:00 如果是那种前后分离的项目,确实也不能完全怪后端,这种 500 也可能是代理有问题 |
![]() | 100 vazo 2022-08-27 13:05:37 +08:00 请问 op,这都快一天了,到底是谁干的? |