Files
反编译工作区 8b15445328 feat: add service config templates and extraction script
Former-commit-id: 1de24b7eb79676d1aba9d799a58c5a753290cf52
2026-05-01 19:38:01 +08:00

5.0 KiB

星中心日志分析

Generated: 2026-04-30 Type: Log collection workspace (not a code repo)

OVERVIEW

Production log collection for Cloudwalk elevator access-control system (elevator-app) — a Java Spring Boot + Spring Cloud (Consul) microservice backed by MySQL (MyBatis + ShardingSphere), Redis, and Kafka. Logs captured from 3 servers on 2026-04-30.

STRUCTURE

日志分析/
├── 10.0.22.207/          # Server 207, collected 17:11
│   └── 202604301711/
│       └── logs-207/
│           ├── elevator-app.log         (116K lines, 16MB)
│           └── elevator-app-probe.log   (15K lines, 3MB)
├── 10.0.22.208/          # Server 208, collected 17:12
│   └── 202604301712/
│       └── logs/
│           ├── elevator-app.log         (198K lines, 31MB)
│           └── elevator-app-probe.log   (14K lines, 2.9MB)
└── 10.0.22.209/          # Server 209, collected 17:13
    └── 202604301713/
        └── logs/
            ├── elevator-app.log         (215K lines, 31MB)
            └── elevator-app-probe.log   (5.6K lines, 1.1MB)

Naming convention: {IP}/{YYYYMMDDHHMM}/logs[-N]/ — IP-based server identification with collection timestamp. Server 207 uses logs-207 subdirectory (non-standard naming, probable manual renaming).

WHERE TO LOOK

Task Location Notes
Application startup / bootstrap elevator-app.log lines ~1-100 Spring Boot startup, profile activation, bean registration
Face recognition events elevator-app.log grep PERSON_RECORD_UPLOAD Person entry/exit with face match scores
Door open events elevator-app.log grep OPENDOOR_RECORD_UPLOAD Door access records with face/token type
Database errors elevator-app.log grep ERROR ~4,200 total ERRORs across all servers
PERSON_LABEL_IDS truncation elevator-app.log grep Data too long for column ~2,200 occurrences — primary blocker
Service discovery / health elevator-app-probe.log Consul registration, config probes, ribbon status
Elevator dispatch failures elevator-app.log grep 派梯记录推送失败 Elevator record send failures

TECH STACK (inferred from logs)

Component Evidence
Java / Spring Boot ElevatorApplication, AnnotationConfigEmbeddedWebApplicationContext
Tomcat Embedded TomcatEmbeddedServletContainer: Tomcat started on port 16112
Spring Cloud Consul ConsulServiceRegistry, spring.cloud.consul.host
MySQL + MyBatis AcsRecogRecordMapper, it_acs_recog_record, SqlSessionTemplate
ShardingSphere ShardingJDBC references in log
Kafka Kafka consumer/producer log entries
Redis Dependency references in bean wiring logs
Spring Cloud Feign AcsFeignConfiguration, Feign client beans

KEY ERROR PATTERNS

PERSON_LABEL_IDS truncation (2,200+ occurrences)

MySQL Data truncation: Data too long for column 'PERSON_LABEL_IDS' at row 1
→ table: it_acs_recog_record
→ source: AcsRecogRecordDaoImpl.add() → AcsRecogRecordMapper.add
→ impact: recognition records with many label IDs fail to persist
→ suggestion: increase column size (VARCHAR → TEXT) or normalize into junction table

Recognition record save failures

c.c.elevator.record.impl.AcsRecogRecordDaoImpl:40 - 保存识别记录失败
→ same root cause (PERSON_LABEL_IDS truncation)

Elevator dispatch failures

cn.cloudwalk.elevator.task.ElevatorRecordSendTask:134 - 派梯记录推送失败
→ ~468 occurrences across all servers
→ "失败原因是:{}" — error message is empty, root cause masked

EVENT TYPES OBSERVED

Event Type Handler Description
PERSON_RECORD_UPLOAD PersonRecordEventHandler Face capture → recognition → person record
OPENDOOR_RECORD_UPLOAD OpenDoorRecordEventHandler Door access granted/denied record

SERVER-SPECIFIC NOTES

  • 10.0.22.207 — appears to have restarted (2 Tomcat startups in log). Profile: access-control
  • 10.0.22.208 — device: 1F高区闸机-右出-134-新, threshold: 60.0
  • 10.0.22.209 — device: B1F监控中心, threshold: 0.9 (much more permissive than 208)

COMMANDS

# Error count per server
grep -c "ERROR" */20260430*/logs*/elevator-app.log

# Top error types across all servers
grep -h "ERROR" */20260430*/logs*/elevator-app.log | \
  sed 's/\[.*\] \[.*\] ERROR //' | sort | uniq -c | sort -rn | head -20

# Extract all PERSON_LABEL_IDS failures
grep "Data too long for column 'PERSON_LABEL_IDS'" */20260430*/logs*/elevator-app.log

NOTES

  • All logs are from 2026-04-30, collected in ~1-hour windows per server
  • .DS_Store files present in every directory — macOS artifacts, safe to ignore
  • No code, configs, tests, or build scripts exist in this workspace — this is a data directory only
  • Server 207 subdirectory named logs-207 instead of logs (deviation from 208/209 pattern)