▶ Обзор
SkyWalking — это система APM с открытым исходным кодом со следующими основными функциями:
- Сервис, экземпляр сервиса, анализ метрик конечной точки
- Анализ причин
- Анализ карты топологии сервиса
- Сервис, экземпляр сервиса и анализ зависимостей конечной точки
- Медленное обслуживание и обнаружение конечных точек
- оптимизация производительности
- Распределенная трассировка и распространение контекста
- Метрики доступа к базе данных, медленное обнаружение SQL (включая операторы SQL)
- Вызовите полицию
▶ Схема архитектуры SkyWalking
SkyWalking поддерживает данные трасс/метрик из различных источников и форматов, в том числе:
- Java, .NET Core, NodeJS and PHP auto-instrument agents in SkyWalking format
- Istio telemetry format
- Zipkin v1/v2 format
- Jaeger gRPC format.
- Envoy metrics format (the metric entries itself is prometheus client metric family)
▶ Разверните SkyWalking OAP и SkyWalking UI
Справочный документ: развертывание Docker SkyWalking OAP и пользовательский интерфейс
▶ Пример: Spring Boot и Java-агент SkyWalking
1. Получите библиотеку агента Java
См. Образ Docker — Создание SkyWalking OAP и пользовательского интерфейса После компиляции агент Java будет иметь вид skywalking-agent/skywalking-agent.jar, а файл конфигурации агента — skywalking-agent/config/agent.config.
2. Запустите приложение Spring Boot
Взяв в качестве примера проект spring-boot-demos/hello spring boot, после упаковки с помощью maven запустите службу с помощью следующей команды:
java \
-javaagent:/<skywalking-project-path>/skywalking-agent/skywalking-agent.jar \
-DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 \
-DSW_AGENT_NAME=spring-boot \
-jar hello-world-1.0-SNAPSHOT.jar
Если выходной журнал похож на следующий, это означает, что Агент запущен успешно:
DEBUG 2019-05-08 11:58:52:399 main AgentPackagePath : The beacon class location is jar:file:/Users/admin/docker/skywalking/apache-skywalking-apm-6.1.0/skywalking-agent/skywalking-agent.jar!/org/apache/skywalking/apm/agent/core/boot/AgentPackagePath.class.
INFO 2019-05-08 11:58:52:401 main SnifferConfigInitializer : Config file found in /Users/admin/docker/skywalking/apache-skywalking-apm-6.1.0/skywalking-agent/config/agent.config.
.........
3. Любой доступ к адресу службы Spring Boot может автоматически собирать информацию
- http://localhost:8080/
SkyWalking UI Dashboard
приборная доска
Топология
Рекомендовано в прошлом
●Spring Boot внедряет внешнюю конфигурацию в статические переменные внутри приложения.
●Конвертировать HTML в PDF новую позу
●Java вызывает Docker API с помощью UnixSocket
●Фатальный недостаток Fastjson
●Service Mesh — локальная совместная отладка удаленных сервисов gRPC
●Динамический рендеринг HTML с помощью Thymeleaf
●Фатальный недостаток Fastjson
●Spring Boot 2 интегрирует структуру ведения журнала log4j2.
●Основной справочный ответ из сборника баллов прохождения собеседования по Java
●Справочный ответ к рамочной статье сводного набора точек прохождения собеседования по Java
●Практичная галантерея Spring Security: как защитить пароли пользователей
●Spring Boot RabbitMQ — приоритетная очередь
Эта статья опубликована в блогеOpenWriteвыпускать!