Ограничения брандмауэра для данных с веб-браузеров и мобильных приложений
Мониторинг пользовательских данных использует технологии HTTP для отправки данных о производительности из браузеров конечных пользователей в Dynatrace. Для этого RUM JavaScript внедряется на веб-страницы приложения. Этот тег или фрагмент кода взаимодействует с Dynatrace. Однако вы должны проверить конфигурацию своих брандмауэров, прокси-серверов и веб-серверов, чтобы обеспечить прохождение всех необходимых данных.
Запросы
Запросы
Для полноценной работы анализа пользовательских данных в Dynatrace должны быть доставлены следующие HTTP-запросы:
ruxitagentjs_
используется для JavaScript при автоматической инъекции — имя тега может содержать дополнительную информацию, такую как активные модули кода и версия тега. Безагентный способ требует использованияruxitagent_
.
/rb_<id>
и/bf
или/bf_<id>
являются сигналами монитора, которые RUM JavaScript отправляет обратно в Dynatrace.- Монитор использует параметры запроса. Для предыдущей версии протокола beacon 2 они
app
,flavor
,format
,referer
,session
,svrid
,type
,visitID
,size
,zip
,va
,tt
,ns
, и даже больше. Для нового протокола beacon версии 3 ониtype
,svrid
,rf
,sn
,app
,dbg
,flavor
,vi
,modifiedSince
,bp
,contentType
,crc
,v
,end
. POST
Тело содержит полезную нагрузку. Полезная нагрузка отправляется сtext/plain
типом содержимого. Для воспроизведения сеансаapplication/octet-stream
также можно использовать тип содержимого.
- Монитор использует параметры запроса. Для предыдущей версии протокола beacon 2 они
Заголовки
RUM использует следующие HTTP-заголовки. Все эти заголовки должны иметь доступ к Dynatrace.
Заголовки запросов
Заголовок | Цель |
---|---|
x-dynatrace
|
Используется для объединения транзакций в заголовках HTTP. Устанавливается Единым Агентом для соединения веб-серверов. Убедитесь, что сетевые компоненты, такие как брандмауэры и маршрутизаторы, не настроены на удаление этих заголовков. Неправильная конфигурация может потенциально привести к повреждению распределенных трассировок. Некоторые сетевые компоненты отключают такие запросы и выдают 403 ошибку HTTP, поэтому необходимо настроить эти компоненты для приема x-dynatrace заголовка.
|
x-dynatrace-application
|
Содержит идентификатор приложения RUM, домен cookie и правило внедрения (noop , auto , before , или after ). Также содержит шаблон внедрения, когда injectionRule=after или injectionRule=before .
Используется в случае, если между браузером пользователя и исходным процессом, который доставляет страницу, есть какой-то прокси. |
x-dynatrace-origin-url
|
Сохраняет исходный URL-адрес запроса в случае перезаписи URL. |
X-dynaTrace-RequestState
|
Отслеживает глубину дерева подпутей, чтобы избежать бесконечных распределенных трассировок. |
x-dtpc
|
Определяет надлежащие конечные точки для передачи маяка; включает идентификатор сеанса для корреляции. |
x-dtreferer
|
Содержит ссылку на страницу для действия и улучшает результаты корреляции. |
x-dtc
|
Содержит информацию для корреляции временных интервалов между источниками. |
Cookie
|
Устанавливает dtCookie cookie на случай, если HTTP-запрос их не содержит.
|
X-Ruxit-Forwarded-For
|
Используется для отслеживания сценариев прокси с помощью модуля кода NGINX. |
X-ruxit-Apache-ServerNamePorts
|
Используется модулем Apache code для синхронизации именования служб с модулем PHP code. |
X-ruxit-Disposition
|
Используется модулем кода IIS для удаления .Вложенные пути к модулю сетевого кода. |
Accept-Encoding
|
Отбрасывается модулем Apache code во время тонкой настройки поведения HTML-инъекции. |
Content-Encoding
|
Отбрасывается во время тонкой настройки поведения HTML-инъекции. |
If-None-Match
|
Отбрасывается при подавлении кэширования. |
If-Not-Modified-Since
|
Отбрасывается при подавлении кэширования. |
If-Match
|
Изменяется при подавлении кэширования. |
If-Range
|
Изменяется при подавлении кэширования. |
tracecontext
|
Используется для маркировки W3C. |
referer
|
Содержит адрес предыдущей веб-страницы, с которой была перейдена ссылка на запрашиваемую в данный момент страницу. |
user-agent
|
Используется для обнаружения браузера и операционной системы. |
x-host
|
Содержит информацию о хосте для доменов, отличных от http. |
Заголовки ответов
Заголовок | Цель |
---|---|
X-OneAgent-JS-Injection
|
Подтверждает, что был введен RUM JavaScript, чтобы избежать дублирования.
Имеет одно из следующих значений:
|
X-ruxit-JS-Agent
|
Подтверждает, что был введен RUM JavaScript, чтобы избежать дублирования.
Имеет одно из следующих значений:
|
x-dtHealthCheck
|
Содержит результаты диагностики внедрения RUM JavaScript, необходимой для анализа технической поддержкой. |
x-dtAgentId
|
Если проверка работоспособности RUM включена, любой задействованный модуль кода ЕА добавляет сюда свой идентификатор. Устанавливается для ответов на специальные запросы. |
x-dtInjectedServlet
|
Содержит полное имя введенного сервлета или фильтра. |
Set-Cookie
|
Устанавливает файл cookie состояния сеанса Единого Агента. |
ETag
|
Единый агент добавляет пользовательскую строку к исходному ETag заголовку ответа, чтобы отслеживать изменения в конфигурации приложения.
|
Last-modified
|
Если заголовок ETag ответа обрабатывается, Единый Агент также вычитает 1 секунду из исходного значения этого заголовка. Устанавливается для ответов на специальные запросы.
|
Content-Length
|
Адаптировано после внедрения HTML. Устанавливается для ответов на специальные запросы. |
Vary
|
Адаптировано во время внедрения HTML в сжатые ответы. Устанавливается для ответов на специальные запросы. |
Content-Encoding
|
Адаптировано во время внедрения HTML в сжатые ответы. |
Content-Type
|
Устанавливается для ответов на специальные запросы. |
Access-Control-Allow-Origin
|
Устанавливается для ответов на специальные запросы. |
Cache-Control
|
Устанавливается для ответов на специальные запросы. |
Server-Timing
|
Используется для передачи информации, которая имеет отношение к корреляции RUM. |
Timing-Allow-Origin
|
Позволяет RUM JavaScript получать доступ к информации, которая имеет отношение к корреляции RUM, в случае запросов из разных источников. |
Access-Control-Allow-Headers
|
Устанавливается для ответов на специальные запросы. |
Access-Control-Allow-Methods
|
Устанавливается для ответов на специальные запросы. |
Access-Control-Max-Age
|
Устанавливается для ответов на специальные запросы. |
Файлы cookie
RUM использует следующие файлы cookie. Все это должно быть доступно для Dynatrace.
Cookie | Максимальный размер | Цель |
---|---|---|
dtCookie
|
Нет установленного ограничения, но обычно менее 100 B | Отслеживает посещение по нескольким запросам. |
dtLatC
|
5 B | Измеряет задержку сервера для мониторинга производительности. |
dtPC
|
58 B | Определяет надлежащие конечные точки для передачи маяка; включает идентификатор сеанса для корреляции. |
dtSa
|
Максимальная длина URL-адреса | Служит промежуточным хранилищем для действий, охватывающих страницы. |
dtValidationCookie
|
Длина dTValidationCookieValue строки, то есть 23
|
Определяет домен верхнего уровня. |
dtDisabled
|
4 B | Определяет, следует ли деактивировать RUM JavaScript из-за затрат и контроля трафика или предотвращения перегрузки. |
rxVisitor
|
45 B | Содержит идентификатор посетителя для сопоставления сеансов. |
rxvt
|
27 B | Включает временную метку тайм-аута сеанса. |
Мобильный RUM
Единый Агент для мобильных устройств использует x-dynatrace
заголовок для пометки HTTP-запросов. Dynatrace использует этот заголовок, чтобы связать мобильную часть веб-запроса с сервисной частью, захваченной другим Единым Агентом.
Для гибридных приложений файл dtAdk
cookie позволяет присоединяться к сеансу из Единого Агента для мобильных устройств и сеансу из RUM JavaScript, чтобы эти сеансы отображались как один сеанс, в то время dtAdkSettings
как файл cookie используется для синхронизации настроек между Единым Агентом для мобильных устройств и RUM JavaScript.
/mbeacon
это сигнал монитора, который Единый Агент для мобильных устройств отправляет обратно в Ключ АСТРОМ, если данные передаются через Активный Шлюз. Если данные отправляются другому Единому агенту, сигнал монитора будет/dtmb
.