# 华为可观测比赛 **Repository Path**: Sunjie2021/huawei-observable-competition ## Basic Information - **Project Name**: 华为可观测比赛 - **Description**: 华为可观测项目仓库 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-12-22 - **Last Updated**: 2025-12-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 华为可观测比赛 #### 介绍 华为可观测项目仓库 #### 软件架构 ```text 软件架构说明 . ├── apm # 链路监控配置docker-compose ├── datakit # datakit采集配置 ├── docs # 配置文档 ├── observability # pipeline,仪表板等配置 ├── README.md └── rum # rum等script配置 ``` #### 404报错 ```shell ruoyi-auth: image: pubrepo.guance.com/demo/demo-ruoyi-auth:latest container_name: ruoyi-auth restart: unless-stopped depends_on: - mysql - redis - nacos ports: - "9200:9200" environment: SPRING_REDIS_HOST: ruoyi-redis SPRING_REDIS_PORT: 6379 SPRING_NACOS_SERVER_ADDR: nacos-service:8848 DD_SERVICE_MAPPING: "mysql:ruoyi-mysql,redis:ruoyi-redis" DD_SERVICE: ruoyi-auth-service DD_ENV: prod DD_VERSION: 1.0.0 DD_AGENT_HOST: 192.168.103.134 DD_TRACE_AGENT_PORT: "9529" DD_PROFILING_ENABLED: true DD_PROFILING_DDPROF_ENABLED: true DD_TRACE_SAMPLE_RATE: 1.0 JAVA_TOOL_OPTIONS: "-javaagent:/data/app/dd-java-agent.jar" volumes: - ./logs/auth:/data/app/logs - ./dd-java-agent.jar:/data/app/dd-java-agent.jar networks: - ruoyi-net ``` ```text 重启 docker-compose down ruoyi-auth docker-compose up -d ruoyi-auth ``` #### test用户错误 ```text 点击用户-test-保存 ``` #### 网关假死 ```text docker stop ruoyi-gateway ``` #### 网络孤岛 ```shell docker-compose down nacos ``` #### 接口超时 ```sql docker exec -it ruoyi-mysql mysql -uroot -ppassword use ry-config; BEGIN; SELECT user_id FROM sys_user WHERE user_name='test' FOR UPDATE; ``` #### 恢复服务ruoyi-file ```shell [root@docker-test target]# pwd /opt/RuoYi-Cloud/ruoyi-modules/ruoyi-file/target [root@docker-test target]# tree -L 1 . ├── classes ├── Dockerfile ├── generated-sources ├── jar ├── logs ├── maven-archiver ├── maven-status ├── openjdk.tar.gz ├── ruoyi-modules-file.jar └── ruoyi-modules-file.jar.original ``` ```Dockerfile 基础镜像:Ubuntu 22.04 + Adoptium Temurin 8 JRE FROM ubuntu:22.04 # 构建参数(可外部覆盖) ARG JAVA_VERSION=jdk8u382-b05 ARG WORKDIR=/data/app ARG JAR_NAME=ruoyi-modules-file.jar ARG JAVA_OPTS="" ARG PARAMS="" # 设置时区和 locale ENV TZ=Asia/Shanghai \ LANG=en_US.UTF-8 \ LANGUAGE=en_US:en \ LC_ALL=en_US.UTF-8 \ JAVA_HOME=/opt/java/openjdk \ PATH=/opt/java/openjdk/bin:$PATH \ workdir=${WORKDIR} \ jar=${JAR_NAME} COPY openjdk.tar.gz /tmp/ # 安装依赖、locale、tzdata、curl、wget、ca-certificates 等 RUN apt-get update && \ DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ tzdata curl wget ca-certificates fontconfig locales p11-kit && \ echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && \ ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && \ rm -rf /var/lib/apt/lists/* && \ mkdir -p "$JAVA_HOME" && \ tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner && \ rm -f /tmp/openjdk.tar.gz && \ find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf && \ ldconfig && \ java -version # 创建工作目录 WORKDIR ${WORKDIR} # 复制 jar COPY ./jar/${JAR_NAME} ${WORKDIR}/ # 入口点 ENTRYPOINT ["sh", "-ec", "exec java ${JAVA_OPTS} -jar ${jar} ${PARAMS} 2>&1"] ``` #### 测试上传头像失败 ```text 修改/root/ruoyi-observable/nginx.conf client_max_body_size 10k; 重启启动ruoyi-web ``` #### 网络抖动 ```shell yum install -y kernel-modules-extra iproute-tc modprobe sch_netem docker inspect ruoyi-gateway -f '{{range $k,$v := .NetworkSettings.Networks}}{{$k}}{{end}}' BRIDGE=$(docker network inspect ruoyi-observable_ruoyi-net -f '{{.Id}}' | head -c 12) echo $BRIDGE sudo tc qdisc add dev br-${BRIDGE} root netem delay 30000ms 10000ms loss 5% ```