( ctx context.Context, ingress TaskIngressContext, action string, direction string, reason string, payload any, )
| 403 | } |
| 404 | |
| 405 | func (m *Manager) recordTaskIngress( |
| 406 | ctx context.Context, |
| 407 | ingress TaskIngressContext, |
| 408 | action string, |
| 409 | direction string, |
| 410 | reason string, |
| 411 | payload any, |
| 412 | ) { |
| 413 | if m == nil || m.auditor == nil { |
| 414 | return |
| 415 | } |
| 416 | writer, ok := m.auditor.(TaskIngressAuditWriter) |
| 417 | if !ok { |
| 418 | return |
| 419 | } |
| 420 | if err := writer.RecordTaskIngress(ctx, TaskIngressAudit{ |
| 421 | WorkspaceID: strings.TrimSpace(ingress.WorkspaceID), |
| 422 | Action: strings.TrimSpace(action), |
| 423 | Direction: strings.TrimSpace(direction), |
| 424 | PeerID: strings.TrimSpace(ingress.PeerID), |
| 425 | Channel: strings.TrimSpace(ingress.Channel), |
| 426 | RequestID: strings.TrimSpace(ingress.RequestID), |
| 427 | Reason: strings.TrimSpace(reason), |
| 428 | Payload: payload, |
| 429 | }); err != nil { |
| 430 | m.logger.Warn( |
| 431 | "network.audit.record_task_ingress_failed", |
| 432 | "action", |
| 433 | action, |
| 434 | "peer_id", |
| 435 | ingress.PeerID, |
| 436 | "request_id", |
| 437 | ingress.RequestID, |
| 438 | "error", |
| 439 | err, |
| 440 | ) |
| 441 | } |
| 442 | } |
| 443 | |
| 444 | func validateRequestedTaskChannel(ingressChannel string, requestedChannel string) error { |
| 445 | trimmed := strings.TrimSpace(requestedChannel) |
no test coverage detected