Google стремится к продвижению расового равенства для чернокожего населения. Смотри как.
Эта страница была переведа с помощью Cloud Translation API.
Switch to English

Монитор HTTP / S сетевых запросов

HTTP / S сеть запрос трассировка является отчетом , который фиксирует время между моментом , когда ваши вопросы приложения запрос к конечной точке службы и когда ответ от этой конечной точки завершения. Для любой конечной точки, к которой ваше приложение делает запрос, Performance Monitoring Захватывает несколько показателей:

  • Время отклика - время между моментом , когда запрос был сделан и когда ответ полностью получено

  • Размер Payload - Byte размер сети полезной нагрузки загружены и загружены в приложение

  • Успех ставка - процент успешных ответов по сравнению с общего числа ответов (для измерения сети или сбоев сервера)

Производительность Мониторинг автоматически собирает метрики для сетевых запросов , которые используют следующие сетевые библиотеки:

стриж

  • URLSession
  • URLConnection

Objective-C

  • NSURLSession
  • NSURLConnection

Этот мониторинг вне коробки включает в себя большинство запросов сети для вашего приложения. Тем не менее, некоторые запросы могут не сообщать, или вы можете использовать другую библиотеку, чтобы сделать сетевые запросы. В этих случаях можно использовать для мониторинга производительности API для пользовательских сетевых запросов вручную инструментов .

Объединение данных в соответствии с URL-шаблонов

Firebase Performance Monitoring автоматически собирает данные для аналогичных сетевых запросов, чтобы помочь вам понять тенденции в вашем исполнении запроса сети.

Для каждого запроса, Firebase проверяет URL запроса сети совпадает шаблон URL. Если запрос URL соответствует шаблону URL, Firebase автоматически агрегирует данные по просьбе под шаблон URL. Firebase модели отображает URL и их агрегированные данные на вкладке Сеть в разделе Производительность консоли Firebase.

Что такое шаблон URL?

URL - адрес шаблон содержит домен плюс шаблон , который может соответствовать URL - путь, например: example.com/*/animals/** .

  • шаблоны URL может содержать следующие сегменты контура:

    • простой текст - соответствует точной строке
    • * - любая строка в одном отрезке пути
    • ** - соответствует произвольный суффикс пути
  • шаблоны URL может быть:

Например: Любое из следующих запросов URL может соответствовать URL шаблона example.com/*/animals/** .

  • example.com/singapore/animals
  • example.com/australia/animals/spiders
  • example.com/australia/animals/marsupials/koala.png

Firebase отображает каждый запрос только один шаблон URL. Если вы настраивали пользовательские шаблоны URL , попытки Firebase , чтобы соответствовать запросу URL - адрес для этих шаблонов первой. Если Firebase не находит соответствия пользовательского шаблона URL, то он совпадает с URL запроса к наиболее репрезентативному автоматическому шаблону URL . Подробнее об автоматических и пользовательских шаблонах URL в следующих разделах.

шаблоны автоматического URL

Без какой - либо конфигурации вами, попытки мониторинга производительности , чтобы отразить последнее поведение использования вашего приложения на соответствие запросов от вашего приложения, автоматических шаблоны URL.

Как соответствие работы автоматической URL шаблон?

Firebase сопоставляет каждый запрос к наиболее репрезентативному автоматическому шаблону URL, который он получил от запросов, отправленных вашего приложение. Заметим, однако, что попытки Firebase соответствовать запрос URL - адреса в любых настроенных пользовательских шаблонов URL в первую очередь.

Ниже приведен простой пример того, как попытки Firebase соответствовать запросам наиболее репрезентативному автоматическому шаблон URL для вашего приложения.

  1. Ваше приложение отправляет большое количество запросов URL, как:

    • example.com/germany/animals/bears
    • example.com/germany/animals/birds
    • example.com/germany/cars

    Firebase определяет , что example.com/germany/** является общим шаблоном запроса для вашего приложения и добавляет его в качестве автоматического шаблона URL в вашем проекте.

    Для любых новых запросов , совпадающих с этим URL шаблона, Firebase агрегирует данные на запросы при автоматическом URL шаблона example.com/germany/** .

  2. После одной недели, большинство запросов вашего приложения является example.com/germany/animals/bears и example.com/germany/animals/birds . Таким образом, Firebase получает более представительный образец URL в example.com/germany/animals/** .

    Для любых новых запросов , совпадающих с этой новой моделью URL, Firebase агрегирует данные на запросы только по новой схеме URL. Firebase продолжает агрегированные данные для запросов к example.com/germany/cars под example.com/germany/** .

  3. Тем не менее, в течение следующих нескольких недель, запросы вашего приложения к example.com/germany/animals/bears и example.com/germany/animals/birds значительно уменьшаются. Firebase определяет , что example.com/germany/animals/** не является представителем последнего поведения использования вашего приложения, так Firebase начинает соответствие эти два запроса назад к example.com/germany/** .

    Firebase не не агрегирует какие - либо дополнительные данные запроса под example.com/germany/animals/** , потому что это уже не самый представительный автоматический шаблон URL.

Из-за автоматическим соответствием URL-шаблон является динамическим, следует учитывать следующее:

  • Спички и агрегированные данные из предыдущих запросов не зависят от новых шаблонов URL. Firebase не задним числом повторно агрегатный данные запроса.

  • Только будущие запросы зависят от новых шаблонов URL. Firebase отображает каждый новый запрос к наиболее репрезентативному автоматическому шаблону URL. Заметим, однако, что попытки Firebase соответствовать запрос URL - адреса в любых настроенных пользовательских шаблонов URL в первую очередь.

Просмотр автоматические модели URL и их данные

Раздел Производительность консоли перечисляет автоматические модели URL в сети> Все вкладки. Вы можете увидеть образцы URL с Без категории этикетки. Эти «широкий» автоматические шаблоны URL, при которых Firebase может агрегировать данные для запросов, которые не соответствуют любому более определенному шаблону URL.

Когда период хранения данных заканчивается для данных , агрегированных в соответствии с шаблоном URL, Firebase удаляет , что данные из шаблона URL. Если все данные, агрегированные в соответствии с автоматическим шаблоном URL истекает, то Firebase удаляет, что URL-шаблон из консоли Firebase.

шаблоны пользовательских URL

Вы можете создавать шаблоны пользовательских URL , чтобы контролировать определенные шаблоны URL , которые Firebase не захватив с его производной автоматического URL поиска по шаблону . Например, вы можете использовать пользовательский шаблон URL для устранения конкретного URL или контролировать определенный набор URL-адреса с течением времени.

Как соответствие работы пользовательской URL шаблон?

Firebase попытки соответствовать запросу URL-адрес в любом сконфигурированных шаблоны пользовательских URL, прежде чем упасть обратно автоматическое соответствие URL-шаблон. Для любых запросов, совпадающих с шаблоном пользовательского URL, Firebase агрегирует данные на запросы по шаблону пользовательских URL.

Если URL на просьбу совпадает более чем один пользовательский шаблон URL, Firebase отображает запрос на наиболее конкретный пользовательский шаблон только URL, в соответствии со следующим порядком специфичности: обычный текст> * > ** слева направо в пути. Например, запрос на example.com/books/dog соответствует две модели пользовательской URL:

  • example.com/books/*
  • example.com/*/dog

Однако картина example.com/books/* наиболее специфична по шаблону URL , потому что крайние левые сегментные books в example.com/books/* имеют приоритет над крайним левым сегментом * в example.com/*/dog .

Когда вы создаете новый пользовательский шаблон URL, быть в курсе следующих условий:

  • Спички и агрегированные данные из предыдущих запросов не влияют на создании новой модели пользовательского URL. Firebase не задним числом повторно агрегатный данные запроса.

  • Только будущие запросы зависят от создания нового шаблона пользовательского URL. Вам, возможно, придется подождать до 12 часов для мониторинга для сбора производительности и агрегированных данных в рамках новой модели пользовательского URL.

Создайте пользовательский шаблон URL

Создайте пользовательский шаблон URL из раздела Performance консоли на вкладке Network. Член проекта должен быть владелец или редактор , чтобы создать новый пользовательский шаблон URL; Однако, все участники проекта могут просматривать шаблоны пользовательского URL и их агрегированные данные.

Чтобы создать пользовательский шаблон URL, начните с доменом, то используйте следующий синтаксис сегмента пути, чтобы создать шаблон, который может соответствовать путям URL.

  • простой текст - соответствует точной строке
  • * - любая строка в одном отрезке пути
  • ** - соответствует произвольный суффикс пути

В следующей таблице описываются некоторые потенциальные пользовательские URL соответствия шаблону.

Для того, чтобы соответствовать ... Создание пользовательского шаблона URL , как ... Пример соответствует этому URL шаблону
Точный URL example.com/foo/baz example.com/foo/baz
Любой отдельный сегмент пути ( * ) example.com/*/baz example.com/foo/baz
example.com/bar/baz
example.com/*/*/baz example.com/foo/bar/baz
example.com/bah/qux/baz
example.com/foo/* example.com/foo/baz
example.com/foo/bar

Примечание: Эта модель не будет соответствовать example.com/foo .

Произвольный путь суффикс ( ** ) example.com/foo/** example.com/foo
example.com/foo/baz
example.com/foo/baz/more/segments
subdomain.example.com/foo.bar/** subdomain.example.com/foo.bar
subdomain.example.com/foo.bar/baz
subdomain.example.com/foo.bar/baz/more/segments

Просмотр пользовательских шаблонов URL и их данные

Раздел Performance из списка консольных пользовательских шаблонов URL , которые агрегированных данных в обоих Сеть> Все и вкладка Сеть> Пользовательские. Если шаблон пользовательский URL не имеет агрегированные данные, то это отображается только на вкладке Сеть> Пользовательские.

Когда период хранения данных заканчивается для данных , агрегированных в соответствии с шаблоном URL, Firebase удаляет , что данные из шаблона URL. Если все данные агрегируются в соответствии с пользовательской URL истекает шаблон, то Firebase не удаляет пользовательский шаблон URL из консоли Firebase. Вместо этого Firebase продолжает список «пустых» пользовательских шаблонов URL на вкладке Сеть> Пользовательские.

Удалить шаблон пользовательского URL

В отличие от автоматического шаблона URL, вы можете удалить шаблоны пользовательских URL из вашего проекта.

  1. Из секции Performance консоли, перейдите на вкладку Сеть> Пользовательские.

  2. Наведите указатель мыши на строку шаблона пользовательского URL, который вы хотите удалить.

  3. Нажмите в правой части строки, а затем подтвердите удаление в диалоговом окне.

При удалении шаблона пользовательского URL, помните о следующем:

  • Любые запросы в будущем отображаются в следующем наиболее шаблон конкретных соответствующий пользовательский URL. Если Firebase не находит соответствия пользовательских шаблонов URL, то он возвращается к функции автоматического соответствия URL шаблона .

  • Спички и агрегированные данные из предыдущих запросов не зависят от удаления шаблона пользовательского URL.

    Вы все еще не можете получить доступ к снятому пользовательскому шаблону URL и его агрегированные данным в сети> Все вкладки до конца установленного срока хранения данных. Когда все агрегированные данные, в соответствии с удаленным шаблоном пользовательского URL истекает, Firebase удаляет пользовательский шаблон URL.

  • Закладка Сеть> Пользовательские не перечислить любые удаленные шаблоны пользовательских URL.

Добавить мониторинг пользовательских сетевых запросов

Чтобы вручную запросы инструмента пользовательских сетей в мониторинге производительности, добавить код, аналогичного следующий:

стриж

 guard let metric = HTTPMetric(url: "https://www.google.com", httpMethod: .get) else { return }

metric.start()
guard let url = URL(string: "https://www.google.com") else { return }
let request: URLRequest = URLRequest(url:url)
let session = URLSession(configuration: .default)
let dataTask = session.dataTask(with: request) { (urlData, response, error) in
        if let httpResponse = response as? HTTPURLResponse {
         metric.responseCode = httpResponse.statusCode
        }
        metric.stop()
}
dataTask.resume()
 

Objective-C

 @property (nonatomic) FIRHTTPMetric *metric;

- (void)beginManualNetworkInstrumentation {
  self.metric =
      [[FIRHttpMetric alloc] initWithURL:[NSURL URLWithString:@"https://www.google.com"]
                              HTTPMethod:FIRHTTPMethodGET];

  [self.metric start];

  NSURLRequest *request =
      [NSURLRequest requestWithURL:[NSURL URLWithString:@"https://www.google.com"]];
  NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request
                                                                delegate:self];
  [connection resume];
}

- (void)connection:(NSURLConnection *)connection
    didReceiveResponse:(NSURLResponse *) response {
  NSHTTPURLResponse* httpResponse = (NSHTTPURLResponse*)response
  self.metric.responseCode = httpResponse.statusCode;
  [self.metric stop];
}
 

прошу HTTP / S сети, которые специфический захват таким образом появляется в консоли Firebase наряду с сетевыми запросами, которые Performance Monitoring захватывает автоматически.

следы запроса сетевого монитора в консоли

  1. В консоли Firebase, перейдите на приборную панель Performance .

  2. Перейдите на вкладку Сеть, то вы можете:

    • Просмотреть краткий отчет о собранных данных для всех сетевых запросов.

    • Выберите нужную конечную точку для просмотра данных конечной точки более подробно.

    • Используйте фильтр кнопку в верхней левой части приборной панели , чтобы выполнить основную фильтрацию данных по атрибутам.

  3. Если нажать определенную конечную точку, консоль отображает обзор собранных данных на метрических карт.

    • Используйте параметры в верхней правой части приборной панели до:

      • Просмотреть различные данные, агрегированные, с течением времени, или для каждой версии приложения.
      • Посмотреть уровень успеха в конечной точке , как агрегировать, с течением времени, или для каждой версии приложения.
    • Используйте фильтр кнопку в верхней левой части приборной панели , чтобы выполнить основную фильтрацию данных по атрибутам.

  4. Для любого показателя, нажмите кнопку Просмотр более просмотреть более подробную информацию о собранных данных и использовать богатые возможности анализа. Например, вы можете фильтровать и сегментировать данные по атрибуту и ​​просматривать данные в контексте сеанса приложения-использования.

Следующие шаги