跟踪疑难解答

在本节中,您将在Adobe Campaign Classic中找到与跟踪配置和实施相关的常见问题。

跟踪工作流失败

我的跟踪工作流失败,如何检测跟踪文件中的损坏行?

注意

仅适用于Windows

损坏的跟踪日志文件……/nl6/var/<instance_name>/redir/log/0x0000日志可以停止跟踪工作流。 要轻松检测损坏的行并删除它们以恢复跟踪工作流,您可以使用以下命令。

我知道哪个文件里

在这种情况下,在0x00000000000A0000.log文件中可以找到损坏的行,但同一进程可以应用于一组文件 — 逐个应用。

$ cd {install directory}/var/{instance name}/redir/log
$ cat 0x00000000000A0000.log | sed -nE '/^[[:alnum:]]{2}x[[:alnum:]]*\t[0-9T:\.-]*\t[0-9a-fA-F]*\t[0-9a-fA-F]*\t[0-9a-fA-F]*\t[[:alnum:]]*\t[[:alnum:]-]*\t[[:print:]]*\t[[:print:]]*\t[[:print:]]*\t([0-9a-fA-F\.:]*|[0-9a-fA-F\.:]*\t[[:print:]]*|[0-9a-fA-F\.:]*,[[:print:]]*)$/!p'

然后,您可以停止跟踪工作流,删除损坏的行并重新启动该工作流。

我现在没有文件中的损坏行

  1. 使用以下命令行签入所有跟踪文件。

    $ cd {install directory}/var/{instance name}/redir/log
    $ cat *.log | sed -nE '/^[[:alnum:]]{2}x[[:alnum:]]*\t[0-9T:\.-]*\t[0-9a-fA-F]*\t[0-9a-fA-F]*\t[0-9a-fA-F]*\t[[:alnum:]]*\t[[:alnum:]-]*\t[[:print:]]*\t[[:print:]]*\t[[:print:]]*\t([0-9a-fA-F\.:]*|[0-9a-fA-F\.:]*\t[[:print:]]*|[0-9a-fA-F\.:]*,[[:print:]]*)$/!p'
    
  2. 该命令列表所有损坏的行。 例如:

    50x000000000FD7EC86 2017-06-24T21:00:50.96 1f506d71 1aeab4b6 1af77020 0 e5155671-4ab7-4ce4-a763-3b82dda6d881 h
    Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36 52.46.20.64
    
    注意

    在用户代理之前添加了回车符,以便能够更好地读取,并且无法反映有效的渲染。

  3. 运行grep命令以查找相应的文件。

$ grep -Rn <Log Id>
# for example:
$ grep -Rn 50x000000000FD7EC86
  1. 查找文件名和行号错误的日志。 例如:

    ./0x000000000FD7E000.log:3207:50x000000000FD7EC86 2017-06-24T21:00:50.96 1f506d71 1aeab4b6 1af77020 0 e5155671-4ab7-4ce4-a763-3b82dda6d881 h
    Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36 52.46.20.64
    
    注意

    在用户代理之前添加了回车符,以便能够更好地阅读,而且无法反映有效的渲染。

然后,您可以停止跟踪工作流,删除损坏的行并重新启动该工作流。

尝试访问跟踪链接时,将显示以下消息:

Requested URL '/r/ id=h787bc0,281a4d8,281a4da&amp;p1=1' cannot be found

  1. 访问<redirection_server>/r/test URL,并检查请求是否返回了内部版本号和localhost。

  2. 检查跟踪服务器的serverConf.xml文件中的spareServer配置。 此配置应处于重定向模式。

    <redirection>
       <spareServer _operation="update" enabledIf="$(hostname)!='test-rt1'" id="1"
       url="http://test-rt1:8080"/>
       <spareServer _operation="insert" enabledIf="$(hostname)!='test-rt4'" id="4"
       url="http://test-rt4:8080"/>
       <spareServer _operation="insert" enabledIf="$(hostname)!='test-rt3'" id="3"
       url="http://test-rt3:8080"/>
       <spareServer _operation="insert" enabledIf="$(hostname)!=test-rt2'" id="2"
       url="http://test-rt2:8080"/>
    </redirection>
    
  3. 手动检查<deliveryID>.xml文件是否存在于……中的计算机上/nl6/var/<instance_name>/redir/url/<YYYY>目录(YYYY表示投放年)。

  4. 手动检查是否可以在<deliveryID>.xml文件中找到<trackingUrlId>。

  5. 在相关的deliveryID投放中手动检查broadlogID是否存在。

  6. 检查……中的<deliveryID>.xml文件权限/nl6/var/<instance_name>/redir/url/year目录。

    他们应至少拥有644权限,以便Apache可以读取跟踪URL以重定向请求的链接。

是否更新NmsTracking_Pointer选项?

在更新NmsTracking_Pointer选项时,请按照以下步骤操作:

  1. 停止跟踪工作流。

  2. 停止trackinglogd服务。

  3. 将NmsTracking_Pointer选项更新为所需值。

  4. 重新启动trackinglogd服务。

  5. 重新启动跟踪工作流。

某些WebMail似乎无法跟踪

您可以自定义单击跟踪公式并指定自定义Adobe Analytics跟踪公式。

需要谨慎进行这种自定义,以避免添加额外的换行字符。 最终公式中将显示javascript表达式外的所有换行字符。

跟踪URL中的这种额外换行字符会导致某些webMail(AOL、GMail等)中出现问题。

第一个示例:

  • 语法不正确

    <%@ include option='NmsTracking_ClickFormula' %><% // Parameters expected by Adobe-Genesis
    var pattern = new RegExp("(nl611\.test15|google\.com)", 'i')
    if( $(urlstring).match(pattern) && delivery.FCP == false )
    {
    %>
    &cid=<%= message.delivery.internalName %>&bid=<%= message.id.toString().toLowerCase() %><% } %>
    
  • 正确的语法

    <%@ include option='NmsTracking_ClickFormula' %><% // Parameters expected by Adobe-Genesis
    var pattern = new RegExp("(nl611\.test15|google\.com)", 'i')
    if( $(urlstring).match(pattern) && delivery.FCP == false )
    {
    %>&cid=<%= message.delivery.internalName %>&bid=<%= message.id.toString().toLowerCase() %><% } %>
    

要了解额外换行的位置,可以用固定字符串STRING替换javascript表达式。

// Incorrect
STRING1
&cid=STRING2&bid=STRING3

// Correct
STRING1&cid=STRING2&bid=STRING3

第二个示例

  • 语法不正确

    <%@ include option='NmsTracking_ClickFormula' %>
    <% // Parameters expected by Adobe-Genesis
    var pattern = new RegExp("(vistaprint|entryUrl)", 'i')
    if( $(urlstring).match(pattern) && delivery.FCP == false )
    {%>&cid=<%= message.delivery.internalName%>&bid=<%= message.id.toString().toLowerCase()%>&SHPID=<%= message.recipient.factShopper.shopper_id %><% }
    
    %>
    
  • 正确的语法

    <%@ include option='NmsTracking_ClickFormula' %><% // Parameters expected by Adobe-Genesis
    var pattern = new RegExp("(vistaprint|entryUrl)", 'i')
    if( $(urlstring).match(pattern) && delivery.FCP == false )
    {%>&cid=<%= message.delivery.internalName%>&bid=<%= message.id.toString().toLowerCase()%>&SHPID=<%= message.recipient.factShopper.shopper_id %><% }
    
    %>
    

要了解额外换行的位置,可以用固定字符串STRING替换javascript表达式。

// Incorrect
STRING1&cid=STRING2&bid=STRING3&SHPID=STRING4

// Correct
STRING1&cid=STRING2&bid=STRING3&SHPID=STRING4

跟踪日志检索速度太慢

当实例不直接检索跟踪日志,而是从远程Adobe Campaign Classic服务器检索日志时,将通过GetTrackingLogs SOAP调用(在remoteTracking模式中定义)检索日志。

serverConf.xml文件中的一个选项允许您设置通过此方法一次检索的日志数:logCountPerRequest。

logCountPerRequest的默认值为1000,在某些情况下,它可能证明为太小。 接受的值必须介于0和10.000之间。

在Adobe Campaign Classic中,在收件人模式与广播/跟踪日志模式相比,目标映射应是独一无二的。

无法使用具有相同跟踪日志模式的多个定位模式,因为跟踪工作流将无法将数据与定位ID协调。

如果您不想将现成的目标映射与nms:收件人一起使用,我们建议采用以下方法:

  • 如果要使用自定义定位维度,您需要使用nms:broadlog作为模板(例如nms:broadLogRcp、nms:broadLogSvc等)创建自定义broadLog/trackingLog模式。

  • 如果要使用OOB trackingLogRcp/broadLogRcp,则定位维度必须是nms:收件人,而筛选维度可能是自定义模式。

在此页面上

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now