getappmap / getappmap/appmap-java
Don't record class map objects outside of the requested scope
未关闭
还没有人认领这个 Issue。
- 主要语言
- Java
- 星标
- 88
- 派生
- 17
- 平均合并
- 2 天 2 小时
- 30 天内合并 PR
- 1
描述
Given this event:
{
"id": 1,
"path": "src/main/java/org/springframework/web/filter/OncePerRequestFilter.java",
"event": "call",
"lineno": 91,
"static": false,
"message": [
{
"kind": "req",
"name": "date",
"class": "java.lang.String",
"value": "2020-09-12",
"object_id": 1713864906
},
{
"kind": "req",
"name": "description",
"class": "java.lang.String",
"value": "routine check up",
"object_id": 1522361550
},
{
"kind": "req",
"name": "petId",
"class": "java.lang.String",
"value": "9",
"object_id": 801870463
},
{
"kind": "req",
"name": "ownerId",
"class": "java.lang.String",
"value": "7",
"object_id": 709319113
},
{
"kind": "req",
"name": "petId",
"class": "java.lang.String",
"value": "9",
"object_id": 611526333
}
],
"method_id": "doFilter",
"thread_id": 556,
"defined_class": "org.springframework.web.filter.OncePerRequestFilter",
"http_server_request": {
"protocol": "HTTP/1.1",
"path_info": "/owners/7/pets/9/visits/new",
"request_method": "POST",
"normalized_path_info": "/owners/:ownerId/pets/:petId/visits/new",
"client_normalized_path_info": "/owners/:ownerId/pets/:petId/visits/new"
}
},
A code object will be created in the class map for org.springframework.web.filter.OncePerRequestFilter, despite that package not existing in the appmap.yml configuration.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先跟踪所提供的事件是如何被处理的,以及 class-map 对象是如何创建的,然后检查 appmap.yml 中请求的作用域如何应用于事件的 defined_class。使用 OncePerRequestFilter 示例作为回归用例;当配置的包之外的类不再被记录时,即表示完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- devtools
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 42/100