События Flurry не появляются вообще - PullRequest
24 голосов
/ 22 марта 2012

Я хотел добавить некоторые функции аналитики в свое приложение, поэтому я создал учетную запись на Flurry и добавил их SDK в свой проект. Затем я записал некоторые события, обычные и временные.

Пока здесь ничего особенного :) Но даже через 2 дня я не вижу ни одного из этих событий на приборной панели Flurry. Я могу видеть количество сеансов, поэтому я предполагаю, что мое приложение действительно что-то отправляет. Но нет событий.

Есть идеи? Я не делал ничего экзотического в коде, я регистрируюсь с моим идентификатором (который является правильным согласно тому, что я сказал ранее)

[FlurryAnalytics startSession:flurryKey];

и зарегистрированные события, используя:

[FlurryAnalytics logEvent:@"MyEvent"];

Ответы [ 5 ]

27 голосов
/ 27 мая 2013

В дополнение к настройке, важно понимать, как Flurry регистрирует события.Благодаря некоторым комментариям я провел несколько тестов в режиме отладки.Вы включаете его с помощью:

[Flurry setDebugLogEnabled:YES];

Когда мое приложение запускается, оно устанавливает идентификатор пользователя и некоторую регистрацию pageView.Вот вывод журнала:

    2013-05-27 12:19:00.636 MyApp[8492:907] Flurry: Starting session on Agent Version [115] 
    2013-05-27 12:19:00.659 MyApp[8492:907] Flurry: setUserID[<cut>]
    2013-05-27 12:19:00.684 MyApp[8492:120b] FlurrySession: Add session with startTime[2013-05-27 15:46:22 +0000] to saved sessions
    2013-05-27 12:19:00.704 MyApp[8492:120b] FlurrySession: Add crashed former session
    2013-05-27 12:19:00.713 MyApp[8492:120b] FlurrySession: Event logging enabled[1]
    2013-05-27 12:19:00.714 MyApp[8492:120b] FlurrySession: Session reports on close enabled[1]
    2013-05-27 12:19:00.715 MyApp[8492:120b] FlurrySession: Session reports on pause enabled[0]
    2013-05-27 12:19:00.716 MyApp[8492:120b] FlurrySession: Crash reporting enabled[0]
    2013-05-27 12:19:00.717 MyApp[8492:120b] FlurrySession: set pushToken [(null)], _pushToken = [(null)]
    2013-05-27 12:19:00.719 MyApp[8492:907] FlurryPageViewDelegate: delegate[(null)] created
    2013-05-27 12:19:00.720 MyApp[8492:907] FlurryPageViewDelegate: delegate[(null)] created
    2013-05-27 12:19:00.736 MyApp[8492:120b] FlurrySession: Initialized session from scratch with startTime[2013-05-27 16:19:00 +0000]
    2013-05-27 12:19:00.737 MyApp[8492:120b] FlurrySession: Created active session with API[<cut>]
    2013-05-27 12:19:00.738 MyApp[8492:120b] FlurrySession: Session reports on close enabled[1]
    2013-05-27 12:19:00.739 MyApp[8492:120b] FlurrySession: Session reports on pause enabled[1]
    2013-05-27 12:19:00.740 MyApp[8492:120b] FlurrySession: Event logging enabled[1]
    2013-05-27 12:19:00.741 MyApp[8492:120b] FlurrySession: Crash reporting enabled[0]
    2013-05-27 12:19:00.742 MyApp[8492:120b] FlurrySession: Sending sessions to server, include current NO
    2013-05-27 12:19:00.763 MyApp[8492:120b] FlurrySession: Initial timestamp[2013-02-20 00:46:06 +0000] from saved source
    2013-05-27 12:19:00.780 MyApp[8492:907] FlurryPageViewDelegate: delegate[(null)] created
    2013-05-27 12:19:01.192 MyApp[8492:120b] Flurry: start background task
    2013-05-27 12:19:01.202 MyApp[8492:120b] FlurrySession: Scheduled send 1 session(s).
    2013-05-27 12:19:01.215 MyApp[8492:120b] FlurrySession: Set userID[<cut>]
    2013-05-27 12:19:01.217 MyApp[8492:120b] FlurrySession: dealloc session
    2013-05-27 12:19:04.857 MyApp[8492:907] FlurrySession: networkStatusChanged to  reachable
    2013-05-27 12:19:05.616 MyApp[8492:907] Flurry: HTTP connection delegate received response[<NSHTTPURLResponse: 0x1c5a1310>]
    2013-05-27 12:19:05.624 MyApp[8492:7f03] FlurrySession: async http response code: 200, id [D1038462-66E2-48AE-8304-83A24B0E26EB]
    2013-05-27 12:19:05.634 MyApp[8492:7f03] Flurry: stop background task

Flurry автоматически отправил начальную настройку сеанса, поэтому вы увидите сеансы на своей странице аналитики (раздел выше, асинхронный http-код ответа: 200 - успех).Вы заметите, что это говорит, что Добавить потерпел неудачу прежний сеанс.Это потому, что я нажал Stop в XCode и убил приложение.Это не позволило Flurry регистрировать какие-либо события!В нем отображается событие, зарегистрированное, но сеанс отправки не запланирован:

    2013-05-27 12:19:41.184 MyApp[8492:aa07] FlurrySession: Recording event eventName[Doc Save] with parameters[{myparams = "xyz";
    }] complete

Сначала необходимо нажать кнопку «Домой» на устройстве, чтобы Flurry действительно отправил зарегистрированное событие.Как только вы нажмете Домой, вы увидите это в журнале:

    2013-05-27 12:21:15.884 MyApp[8492:a30f] FlurrySession: Pause session with pauseTime[2013-05-27 16:21:15 +0000]
    2013-05-27 12:21:15.885 MyApp[8492:a30f] FlurrySession: Finish session with endTime[2013-05-27 16:21:15 +0000]
    2013-05-27 12:21:15.887 MyApp[8492:a30f] FlurrySession: ending all unterminated timed events with _endTime[2013-05-27 16:21:15 +0000]...
    2013-05-27 12:21:15.890 MyApp[8492:a30f] FlurrySession: ...finished ending un-ended timed events.
    2013-05-27 12:21:15.891 MyApp[8492:a30f] FlurrySession: Sending sessions to server, include current YES
    2013-05-27 12:21:15.900 MyApp[8492:a30f] FlurrySession: Initial timestamp[2013-02-20 00:46:06 +0000] from saved source
    2013-05-27 12:21:15.914 MyApp[8492:a30f] Flurry: start background task
    2013-05-27 12:21:15.919 MyApp[8492:a30f] FlurrySession: Scheduled send 1 session(s).
    2013-05-27 12:21:16.729 MyApp[8492:907] Flurry: HTTP connection delegate received response[<NSHTTPURLResponse: 0x1c5ac0b0>]
    2013-05-27 12:21:17.090 MyApp[8492:9c0b] FlurrySession: async http response code: 200, id [BB7CE5C1-D9C4-412F-9A41-6A838174B8FC]
    2013-05-27 12:21:17.293 MyApp[8492:9c0b] Flurry: stop background task

Затем вы можете убить приложение с помощью Stop в XCode

14 голосов
/ 22 марта 2012

Я думаю, что вы имеете в виду FlurryAnalytics, когда говорите Flurry Events.

ОПЦИЯ-1:

Пожалуйста, перепроверьте ключ иинтегрировали ли вы последнюю версию Flury SDK для iOS.

ОПЦИЯ-2:

Проверьте, правильно ли вы указали ссылку FlurryAnalytics.h и libFlurryAnalytics.a

Также проверьте, добавили ли вы libFlurryAnalytics.a в Link Binaries to Libraries в настройках Target

OPTION-3:

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

Более того, насколько я знаю, это не услуга реального времени.Примерно 6-8 часов для отображения зарегистрированных результатов.

В противном случае вам нужно связаться с ребятами из Flurry Analytics, поскольку это действительно простой API и не может быть много проблем, которые разработчики могли бывызвали

Надеюсь, это поможет вам.

6 голосов
/ 27 августа 2013

Если вы используете любой из backgroundModes, вы должны установить:

[Flurry setBackgroundSessionEnabled:NO];

Объяснение и описание:

https://stackoverflow.com/a/17840667/1041311

3 голосов
/ 05 мая 2014

У меня была такая же проблема, и я получил следующий отзыв от support@flurry.com:

Любое удаленное событие в основном заносится в черный список и не отслеживается снова, если не удалено Flurryadmin.

Ожидаете ли вы, что появятся 55 удаленных событий?Если да, то, поскольку они удалены, они больше не будут отслеживаться.

Поэтому я удалил свое приложение из раздела управления dev.flurry.com и создал новыйодин с тем же именем, но у него был новый API_KEY.После этого все мои 55 событий появились в мониторе Flurry Analytics правильно и со всеми параметрами.

0 голосов
/ 19 января 2016

Одной из причин, по которой некоторые из новых событий Flurry не регистрируются, может быть ограничение максимально допустимого количества (отдельных) событий Flurry.Как объяснено в этом ответе , ограничение составляет 300 пользовательских событий.Если вы достигнете этого предела, новое событие будет просто игнорироваться системой Flurry, и, к сожалению, эта проблема не будет отображаться в журнале Xcode.

Если это основная причина вашей проблемы, вот несколько советов:

  1. Избавьтесь от событий, которые больше не нужны.Вы можете сделать это на экране администратора Flurry (Управление → События). Примечание: Вы не можете воссоздать удаленное событие, не связавшись с командой поддержки Flurry (см. здесь ).
  2. Перепроектируйте события FlurryЛучше использовать одно отдельное событие для группы похожих действий и предоставить подробности в словаре параметров, чем создавать новое (настраиваемое) событие для каждого действия.
...