• 前言:为什么需要全链路监控?​ 在分布式系统中,一个用户请求可能穿越 Struts2 控制器、Spring 服务、Hibernate 数据访问等多个层级,传统日志排查方式面临三大痛点:​ 故障定位难:无法快速追踪请求流经路径,问题排查耗时久(某银行案例显示,未接入 APM 时异常定位需 45 分钟);​ 性能瓶颈隐蔽:缺乏各组件耗时统计,难以识别慢 SQL、低效方法等瓶颈;​ 系统行为不透明:微服务调用链路复杂,无法直观掌握
  • ​下面给你一套 高吞吐、低成本日志系统方案:ClickHouse + Filebeat/Fluentd 的最简可落地架构,含组件分工、部署要点、建表示例和配置模板。 一、整体架构(极简版) 应用日志文件/容器日志 ↓ Filebeat / Fluent Bit(采集、轻量过滤) ↓ Kafka(可选,削峰、解耦、重放) ↓ ClickHouse(列式存储、高压缩、高吞吐写入/查询) ↓ Grafana / 自建后台(可视化、检索、告警) 核
  •   我们的团队人员不多,产品由 7 个子系统组成,分别是:应用中心(center)、前端监控(monitor)、后端监控(apm)、埋点系统(event)、日志系统(log)、大屏系统(screen)、文件系统(file),每个子系统分前端和后端,共约 14 个独立 Git 仓库。由于线上产品业务并不算多,我们都是技术同学兼职运维工作,遇到的运维问题都是自己硬着头皮上去解决的,久病成良医,渐渐的我们也了解了一些运维知识,但是远没有达
  • 前言在企业级埋点分析场景中,数据导出是高频刚需。当系统部署多节点集群后,并发导出重复执行、资源抢占、数据错乱等问题随之而来。本文基于 Webfunny 埋点平台,完整落地一套MySQL 分布式锁 + 中心校验 + 本地降级的多节点导出方案,保证高并发下同一用户同一时刻仅一次有效导出,生产级稳定可用。 一、方案总览 本方案面向 Webfunny 企业版多节点集群设计,核心解决: 多节点并发导出重复执行导出资源占用过高导致服务抖动中心服务异常时的业
  • 前言: 在埋点分析、用户行为日志等大数据场景中,ClickHouse 凭借列式存储的高性能成为首选数据库。但很多团队都踩过同一个坑:明明用了 ClickHouse,查询还是慢、存储占用超标,甚至出现数据丢失 ——问题根源往往在字段类型设计。 字段类型选不对,不仅会让 ClickHouse 的压缩优势荡然无存(列式存储核心优化点),还会导致查询性能暴跌、存储成本翻倍。本文结合神策、GrowingIO 等头部竞品的设计思路,拆解 ClickHou
  • 这是一个真实的排查案例。没有日志打印的神操作,没有凭经验瞎猜的过程,只有一张链路追踪图,直接把问题定位到了具体的代码位置和请求节点。 起因:部署完成,注册接口一直 500 最近在帮一个客户用 Docker 镜像部署 Webfunny 私有化系统。镜像拉下来,容器启动顺利,服务也跑起来了。 但当我们打开页面,进行首次注册的时候,接口一直返回 500。 第一反应当然是去看日志。翻了一圈容器日志,找到了一行报错: POST http:/
  • 一、依赖配置 已在 `pom.xml` 中添加以下opentelemetry相关依赖: <!-- OpenTelemetry API --> <dependency> <groupId>io.opentelemetry</groupId> <artifactId>opentelemetry-api</artifactId> <version>1.24.0<
  •   一、对接概述 1. 文档目的 本文档详细说明 Java 应用通过 OpenTelemetry Java Agent 对接 Webfunny 监控平台的完整流程,包括 Agent 下载、配置参数、多环境启动方式、监控验证及问题排查,适用于需要采集链路追踪、SQL 调用、HTTP 请求等数据并上报至 Webfunny 的 Java 项目(支持 Spring Boot、Spring MVC、MyBatis、Redis 等主流框架
  • 在服务器上部署 Apache SkyWalking APM 9.5.0 是一个系统性的过程,下面我为你梳理了详细的步骤和关键配置要点。你可以根据这个指南,结合服务器的实际环境进行操作。 部署前准备 ​​环境要求​​:确保服务器已安装 ​​JDK 11 或更高版本​​。这是 SkyWalking 9.5.0 稳定运行的前提   ​​获取安装包​​:从 Apache 官网下载 SkyWalking 9.5.0 的发行版 你可
  •   最近在给客户部署Webfunny前端监控和埋点系统的时候,经常会遇到客户要求完全离线安装,所以我将整个离线安装的教程整理下来,这里将介绍如何离线安装Clickhouse数据库。 操作系统:CentOs、Ubantu(如何查看系统:uname -m) 要求:机器上已经安装了docker程序 前边有文章已经介绍了如何离线安装docker系统,所以这里的Clickhouse安装也是基于docker来安装和运行的。 备注: x86_64