- LogController: 新增 /issues/{id}/events, /issues/{id}/trend, 管理接口
(resolve/ignore/assign/bulk),queryIssues 改用 level/status/q 参数
- LogService: 全面重写,eventId 幂等、breadcrumbs 存储、affectedUsers 计数、
Issue status 管理、getIssueEvents/getIssueTrend 独立接口
- Entity: LogIssueEventEntity 增加 eventId/exceptionType/exceptionValue/breadcrumbs;
LogIssueEntity 增加 status/affectedUsers/assignee;LogEventEntity 增加 eventId
- Repository: LogIssueEventRepository/LogIssueRepository/LogEventRepository 新增
idempotency/filter/trend/bulk 查询方法
- DTO: IssueActionRequest/IssueTrendResponse 新增;IssueResponse/IssueEventResponse 扩展
- V3 migration: log_issue_events/log_issues/log_events 结构升级
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
27 行
985 B
Java
27 行
985 B
Java
package com.xuqm.bugcollect.dto;
|
|
|
|
import com.fasterxml.jackson.annotation.JsonProperty;
|
|
import jakarta.validation.constraints.NotBlank;
|
|
import jakarta.validation.constraints.NotEmpty;
|
|
import java.util.List;
|
|
|
|
public record EventBatchRequest(
|
|
@JsonProperty("sentAt") String sentAt,
|
|
@JsonProperty("sdk") IssueBatchRequest.SdkInfo sdk,
|
|
@JsonProperty("events") @NotEmpty List<EventItem> events
|
|
) {
|
|
public record EventItem(
|
|
@JsonProperty("eventId") String eventId,
|
|
@NotBlank @JsonProperty("appKey") String appKey,
|
|
@NotBlank String name,
|
|
long timestamp,
|
|
@JsonProperty("properties") Object properties,
|
|
String platform,
|
|
String release,
|
|
String environment,
|
|
@JsonProperty("user") IssueBatchRequest.UserInfo user,
|
|
@JsonProperty("device") IssueBatchRequest.DeviceInfo device,
|
|
@JsonProperty("sdk") IssueBatchRequest.SdkInfo sdk
|
|
) {}
|
|
}
|