2

Mixpanelで新しいユーザーを識別するために、次のコードを使用しています。

    var mixpanelTries = 0;
    function handleMixpanelUser() {
        if ((window.mixpanel) && (window.mixpanel.alias)) {
            if ("@Auth.UserID" !== "0") {
                if ("@SessionWrapper.UserInitialized" === "False") {
                    try { mixpanel.alias("@Auth.UserID"); } catch (exception) {console.log("exception"); }
                    mixpanel.identify("@Auth.UserID");
                    mixpanel.people.set({
                        "$email": "@Auth.UserEmail",    // only special properties need the $
                        "$created": "@SessionWrapper.UserCreated",
                        "name": "@Auth.FullName"
                    }, function (resp) { });
                    var url = "http://" + "@Config.BaseUrl" + "/finalizeuser/" + "@Auth.UserID";
                    $.ajax({
                        type: 'POST',
                        url: url,
                        async: false
                    });
                }
                else {
                    mixpanel.identify("@Auth.UserID");
                }
            }
        }
        else {
            if (mixpanelTries < 5) {
                mixpanelTries++;
                setTimeout(handleMixpanelUser, 100);
            }
        }
    }

    $(function () {
        handleMixpanelUser();
    });

このコードは2012年12月に作成され、完全に機能しました。ただし、1月1日以降、このコードは機能しないため、クラッシュしませんが、新しいユーザーはMixpanelで作成されません。コードに変更はありませんでした。私のコードが2012年に良かったのに、2013年に悪かったのはなぜですか?

設定を変更する必要がありますか?

助けてくれてありがとう。

4

1 に答える 1

2

私は問題を理解しました:私のコードは常に機能していましたが、Mixpanel UIには大きな並べ替えのバグがあるため、私はそれを認識していませんでした。レコードを作成時刻の降順で並べ替えると、最初に表示されたレコードは12月31日に作成されました。

ただし、レコードをLast Seenで並べ替えると、数分前に作成されたユーザーが表示されます。

これは並べ替えのバグです。Mixpanelの日付の並べ替えは、日付を並べ替えるときにアルファベット順に並べ替えられると思います。

'2012年12月31日'>'2013年1月7日'

したがって、2013年12月31日の人々は、2013年1月1日の人々よりも「新しい」のです。問題を通知するためにMixpanelにメールを送信します。

于 2013-01-07T09:15:06.043 に答える