APM服务部分接口404

2024-03-01 08:18
文章标签 服务 接口 404 部分 apm

本文主要是介绍APM服务部分接口404,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

现状部分接口404

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

定位问题

1. 服务器本地curl

在这里插入图片描述
链接请求没有问题。

2. 浏览器发起请求后服务端接收的请求是什么?

在这里插入图片描述

请求中的 %2F 被替换为 /

定位到问题。

路径在传递的过程中将%2F 换为 /

解决思路

nginx是否可以取得最原始的URI?

$uri , $document_uri. 两者取到的都是被替换后的结果

$require_uri 可以取得原始的请求链接

/kibana/api/apm/services/growth-sem/transaction_groups/page-load/%2Fgrowth%2Fsem/distribution?start=2021-05-10T04%3A43%3A06.530Z&end=2021-05-11T04%3A43%3A06.531Z&transactionId=21a98dbf48a61a08&traceId=91b5d56cac75988c7989f92672cbdb88&uiFiltersES=%255B%255D# 拆分
/kibana/api/apm/services/growth-sem/transaction_groups
/page-load/%2Fgrowth%2Fsem/distribution?
start=2021-05-10T04%3A43%3A06.530Z&end=2021-05-11T04%3A43%3A06.531Z&transactionId=21a98dbf48a61a08&traceId=91b5d56cac75988c7989f92672cbdb88&uiFiltersES=%255B%255D
截取请求URI转发给服务
使用lua脚本截取
string.sub(ngx.var.request_uri, 9)
将lua脚本的中变量导出到nginx

set_by_lua(_file)
语法:set_by_lua $res [ $arg1 $arg2 …]
适用上下文:server、location、location if

set_by_lua  $originuri 'return string.sub(ngx.var.request_uri, 9)';
完整示例
set_by_lua $originuri 'return string.sub(ngx.var.request_uri, 9)';
proxy_pass http://galaxy_kibana/$originuri;
线上部署进行验证

在这里插入图片描述

完全符合预期

这篇关于APM服务部分接口404的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/761787

相关文章

go中空接口的具体使用

《go中空接口的具体使用》空接口是一种特殊的接口类型,它不包含任何方法,本文主要介绍了go中空接口的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录接口-空接口1. 什么是空接口?2. 如何使用空接口?第一,第二,第三,3. 空接口几个要注意的坑坑1:坑2:坑3:接口-空接口1. 什么是空接

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T

Linux上设置Ollama服务配置(常用环境变量)

《Linux上设置Ollama服务配置(常用环境变量)》本文主要介绍了Linux上设置Ollama服务配置(常用环境变量),Ollama提供了多种环境变量供配置,如调试模式、模型目录等,下面就来介绍一... 目录在 linux 上设置环境变量配置 OllamPOgxSRJfa手动安装安装特定版本查看日志在

SpringCloud之LoadBalancer负载均衡服务调用过程

《SpringCloud之LoadBalancer负载均衡服务调用过程》:本文主要介绍SpringCloud之LoadBalancer负载均衡服务调用过程,具有很好的参考价值,希望对大家有所帮助,... 目录前言一、LoadBalancer是什么?二、使用步骤1、启动consul2、客户端加入依赖3、以服务

如何用java对接微信小程序下单后的发货接口

《如何用java对接微信小程序下单后的发货接口》:本文主要介绍在微信小程序后台实现发货通知的步骤,包括获取Access_token、使用RestTemplate调用发货接口、处理AccessTok... 目录配置参数 调用代码获取Access_token调用发货的接口类注意点总结配置参数 首先需要获取Ac

讯飞webapi语音识别接口调用示例代码(python)

《讯飞webapi语音识别接口调用示例代码(python)》:本文主要介绍如何使用Python3调用讯飞WebAPI语音识别接口,重点解决了在处理语音识别结果时判断是否为最后一帧的问题,通过运行代... 目录前言一、环境二、引入库三、代码实例四、运行结果五、总结前言基于python3 讯飞webAPI语音

MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析

《MyBatis-Plus中Service接口的lambdaUpdate用法及实例分析》本文将详细讲解MyBatis-Plus中的lambdaUpdate用法,并提供丰富的案例来帮助读者更好地理解和应... 目录深入探索MyBATis-Plus中Service接口的lambdaUpdate用法及示例案例背景

Nginx配置系统服务&设置环境变量方式

《Nginx配置系统服务&设置环境变量方式》本文介绍了如何将Nginx配置为系统服务并设置环境变量,以便更方便地对Nginx进行操作,通过配置系统服务,可以使用系统命令来启动、停止或重新加载Nginx... 目录1.Nginx操作问题2.配置系统服android务3.设置环境变量总结1.Nginx操作问题

Java8需要知道的4个函数式接口简单教程

《Java8需要知道的4个函数式接口简单教程》:本文主要介绍Java8中引入的函数式接口,包括Consumer、Supplier、Predicate和Function,以及它们的用法和特点,文中... 目录什么是函数是接口?Consumer接口定义核心特点注意事项常见用法1.基本用法2.结合andThen链

springboot的调度服务与异步服务使用详解

《springboot的调度服务与异步服务使用详解》本文主要介绍了Java的ScheduledExecutorService接口和SpringBoot中如何使用调度线程池,包括核心参数、创建方式、自定... 目录1.调度服务1.1.JDK之ScheduledExecutorService1.2.spring