用于常见标记问题的诊断和错误报告.pdf

上传人:n****g 文档编号:1025125 上传时间:2018-03-26 格式:PDF 页数:19 大小:665.19KB
返回 下载 相关 举报
摘要
申请专利号:

CN200780048855.X

申请日:

2007.10.30

公开号:

CN101578598A

公开日:

2009.11.11

当前法律状态:

授权

有效性:

有权

法律详情:

专利权人的姓名或者名称、地址的变更IPC(主分类):G06F 17/22变更事项:专利权人变更前:谷歌公司变更后:谷歌有限责任公司变更事项:地址变更前:美国加利福尼亚州变更后:美国加利福尼亚州|||授权|||实质审查的生效|||公开

IPC分类号:

G06F17/22

主分类号:

G06F17/22

申请人:

谷歌公司

发明人:

斯蒂芬·楚恩

地址:

美国加利福尼亚州

优先权:

2006.10.30 US 11/554,397

专利代理机构:

中原信达知识产权代理有限责任公司

代理人:

张焕生;安 翔

PDF下载: PDF下载
内容摘要

根据在向发布者的请求中的标志的存在,调试内容请求。从发布者接收的文档包含用于调试向内容提供者的对内容的请求的脚本。检查请求以确定信息性的、警示性的和错误的条件的存在。所述条件被写入到调试用户界面中。

权利要求书

1.  一种方法,包括:
请求在一个位置处的包含脚本的文档,所述请求包括指示符;
响应于所述请求接收所述文档;
响应于所述指示符的接收,执行所述脚本以测试条件的状态;以及
显示所述条件的所述状态。

2.
  如权利要求1所述的方法,进一步包括:
显示窗口;以及
在所述窗口中显示所述状态。

3.
  如权利要求2所述的方法,进一步包括:
确定状态情形;以及
基于所述状态情形对所述状态进行颜色编码。

4.
  如权利要求2所述的方法,进一步包括:
在所述窗口中显示时序信息,以示出完成由所述条件指定的操作所需要的时间长度。

5.
  如权利要求2所述的方法,进一步包括:
在所述窗口中显示向内容服务器作出的请求;以及
在所述窗口中显示来自所述内容服务器的响应。

6.
  如权利要求1所述的方法,其中执行所述脚本以测试所述条件的所述状态进一步包括:测试在所述文档中指定的函数调用是否缺失或以不正确的序列出现。

7.
  如权利要求1所述的方法,其中执行所述脚本以测试所述条件的所述状态进一步包括:确定所述文档是否包括不正确的槽段名称、脱序的JavaScript标记,或试图填充尚未被添加的槽段。

8.
  如权利要求1所述的方法,其中执行所述脚本以测试所述条件的所述状态进一步包括:确定在所述文档指定的信息和存储在内容服务器上的信息之间是否存在不一致。

9.
  如权利要求8所述的方法,其中所述不一致包括以下中的一个:在所述文档中指定的标记和在所述内容服务器上的信息之间的不同点;由所述内容服务器中的延迟造成的延迟问题;或所述文档中的禁用槽段。

10.
  如权利要求1所述的方法,其中执行所述脚本以测试所述条件的所述状态进一步包括:测试内容是否已被成功地接收但是未被显示。

11.
  如权利要求1所述的方法,其中所述请求是所述文档的统一资源定位符(URL)并且所述指示符是添加到所述URL的标志。

12.
  一种系统,包括:
内容服务器,可被配置来接收内容;
发布者服务器,操作地耦接到所述内容服务器并且可被配置来从所述内容确定上下文;以及
内容库,操作地耦接到所述内容服务器,并且可被配置来向所述内容服务器提供与上下文相关联的内容,
其中所述发布者服务器在从客户端设备接收到请求后向所述客户端设备提供计算机可执行指令,所述计算机可执行指令由所述客户端设备执行以确定与从所述内容库到所述客户端设备的内容的通信传递有关的条件。

13.
  一种系统,包括:
处理器,可被配置来向远程位置请求内容,所述内容包括用以确定与所述请求相关联的调试信息的计算机可执行指令;以及
界面,操作地耦接到所述处理器,并且可被配置来显示所述调试信息,所述调试信息包括与在所述界面中的所述内容的显示相关联的错误。

14.
  一种其上存储有指令的计算机可读介质,当由处理器执行所述指令时,使得所述处理器执行以下操作:
显示由发布者提供的第一内容;
显示由内容服务器提供的第二内容;
调试指令以从所述内容服务器获得所述第二内容;以及
在界面中显示所述调试的结果。

15.
  如权利要求14所述的计算机可读介质,其中显示所述调试的结果包括:
确定所述结果的严重性;以及
基于所述严重性对所述结果进行颜色编码。

16.
  如权利要求14所述的计算机可读介质,其中显示所述调试的结果包括:在所述界面中显示时序信息以示出完成预定指令所需要的时间长度。

17.
  如权利要求14所述的计算机可读介质,其中调试指令包括:测试函数调用是否缺失或以错误的序列出现。

18.
  如权利要求14所述的计算机可读介质,其中调试指令包括测试所述指令是否是以下中的一项:指定了不正确的槽段名称、指定了脱序JavaScript标记、或填充了尚未被添加的槽段。

19.
  如权利要求14所述的计算机可读介质,其中调试指令包括:测试以确定在所述指令和存储在所述内容服务器上的信息之间是否存在不一致。

20.
  如权利要求19所述的计算机可读介质,其中所述不一致包括:在所述指令中指定的标记和在所述内容服务器上的信息之间的不同点、由所述内容服务器中的延迟造成的延迟问题、或由所述指令指定的禁用槽段。

21.
  如权利要求14所述的计算机可读介质,其中调试指令进一步包括:测试内容是否成功地被接收而未被显示。

22.
  一种系统,包括:
用于接收由远程发布者提供的文档的装置;
用于执行包含在所述文档中的指令的装置,其中所述指令从内容服务器获取内容;
用于调试所述指令以确定在从所述内容服务器获取内容过程中的错误的装置;以及
用于显示所述错误的装置。

23.
  一种方法,包括:
检查对文档的请求,以确定错误的存在,所述文档包括用以调试对内容的请求的脚本;以及
将错误条件写入到展示给内容请求者的用户界面。

说明书

用于常见标记问题的诊断和错误报告
技术领域
本公开涉及网络上的内容请求。
背景技术
显示在网页上的内容能够由一个或多个内容服务器响应于内容请求而生成。发布者能够将特定于内容服务器的标记嵌入在网页中用以从内容服务器派发内容(例如广告)给他们的访问者。标记被用来描述在给定网页中存在什么内容槽段(slot)以及能够派发什么创意(creative)给每一个槽段。由于网络延迟、标记名称中的打字错误以及错误配置,在用于呈现(rendering)的时刻内容可能不在给定的网页中出现。例如,标记可能被不正确地或不完全地指定,或者正确指定的标记可能与服务器侧的设置不相匹配。此外,由于客户端浏览器或操作系统的问题、区域设置或语言问题、短时的网络问题等原因,内容展示(presentation)可能失败。
当错误发生时,发布者通常将拨打服务呼叫,对于内容服务器提供者这是费时且昂贵的。在许多情况下,内容服务器提供者可能难以重现造成错误的潜在问题。例如,造成问题的原因可以是更旧的浏览器或非支持版本的操作系统。短时的网络问题也是难以重现的,这使得内容服务器提供者难以诊断问题。
发明内容
在此公开的系统和方法涉及对内容请求的调试。根据一些实施方式,请求在一个位置处的包含脚本的文档,其中该请求包括指示符。接收所请求的文档并且执行脚本以测试某个条件(condition)的状态。在窗口中显示状态。可以通过颜色编码在该窗口中指示状态。
根据一些实施方式,一种系统包括:内容服务器,可被配置来接收内容;发布者服务器,操作地耦接到内容服务器并且可被配置来从内容确定上下文;以及内容库,操作地耦接到内容服务器并且可被配置来向内容服务器提供与上下文相关联的内容。发布者服务器在从客户端设备接收到请求后向客户端设备提供计算机可执行指令。客户端设备执行计算机可执行指令以确定与从内容库到客户端设备的内容通信相关的条件。
根据一些实施方式,一种系统包括可被配置来从远程位置请求内容的处理器以及操作地耦接到该处理器并可被配置来显示调试信息的界面。该内容包括用来确定与该请求相关联的调试信息的计算机可执行指令,并且该调试信息能够包括与在该界面中的内容的显示相关联的错误。
这些以及其它的示例实施方式能够包括下述的一个或多个特征或优势。在一些实施方式中,在用户界面中提供调试信息,所述调试信息允许发布者诊断问题以及向内容服务器提供者提供有效的报告。
附图说明
图1是用于从内容服务器请求内容的系统的框图。
图2是用于调试对来自内容服务器的内容的请求的示例过程。
图3是用于调试对来自内容服务器的内容的请求的另一个示例过程。
图4-6是用于显示调试错误的示例界面。
具体实施方式
图1是用于从内容服务器请求内容的系统10的框图。在一个实施方式中,内容可以包括广告,并且内容服务器可以是广告服务器。也可以请求不同类型的内容,例如,天气、行车路线指引、琐事等。
在一个实施方式中,客户端系统100被配置来访问在网络上的网页,例如因特网。客户端系统100可以是例如web浏览器或执行网络导航软件的计算设备等。由客户端系统100访问的web地址(例如统一资源定位符(URL))能够被解析来识别发布者102,例如托管着对应的网页的服务器。客户端系统100因而发送对网页内容106的网页内容请求104到发布者102。发布者102响应于该请求向客户端系统100提供作为例如包含JavaScript的HTML文档的网页内容106。网页内容106可以包括一个或多个内容展示。在一个实施方式中,内容展示可以包括广告槽段,用于由广告服务器派发的广告。也可以使用其它的内容展示。
发布者102提供的网页内容106包括到一组指令108的引用。在一个实施方式中,指令108包括用来呈现和展示所请求的内容例如广告的存储指令108a、时序(timing)指令108b以及请求指令108c。在一个实施方式中,指令108由诸如广告服务器的内容服务器134提供,并且存储在客户端系统100处,诸如与web浏览器相关联的缓存中。在一个实施方式中,客户端系统100能够对于每一个对所存储的指令108的后续访问确定所存储的指令108是否是最新近的版本。如果所存储的指令108不是最新近的版本,客户端系统100能够向内容服务器134请求指令110的最新近的版本,其能够包括存储指令110a、时序指令110b以及请求指令110c。在接收到最新近版本的指令110后,客户端系统100将最新近版本的指令110存储为存储的指令108。
网页内容106能够定义被配置为显示来自内容服务器134的内容的内容槽段112-120。虽然作了到单个内容服务器134的引用,多个内容服务器能够向单个网页提供内容。在一个实施方式中,内容槽段112-120是在HTML标记中定义的广告槽段。指令108生成内容请求122-130,其中发出内容请求122-130来请求内容以填充内容槽段112至120。在一个实施方式中,请求122至130被存储在数据贮存132中,诸如缓冲器132中,接着在一个或多个请求136和140中被发送到内容服务器134。内容服务器134处理所接收到的单个或组合的请求136并将所识别的内容138返回到客户端系统100。所识别的内容138接着作为发布者的网页的一部分被显示在对应的内容槽段中,例如内容槽段112、114和116。
当客户端100向发布者102请求内容时,可能会碰到因为在页面中的标记或在其它环境和运行条件中的过失的错误。这样的错误包括语法错误、语义错误、运行错误以及环境错误。当网页违反与例如HTML语法或JavaScript语法的给定协议相关联的规则时,就遇到语法错误。许多HTML编辑器将检测语法错误。一些常见的语法错误包括不匹配的HTML标记,例如缺失了结束标记,这将阻止页面内容正确地显示。不正确的JavaScript语法,诸如JavaScript函数调用中的缺失的引号,是另外一个示例。
语义错误也能够是基于协议的。例如,语义错误能够在JavaScript函数调用缺失时出现或以不正确的序列出现。语义错误能够在协议(例如JavaScript)函数调用中指定了无效或不正确参数值名称时发生。其示例包括:不正确的槽段名称、脱序的JavaScript标记以及试图填充尚未被增添的槽段的页面。
当由于在网页内容106的标记和存储在内容服务器134上的信息之间的不一致而使内容没有如所预期的那样被显示时,就出现运行错误。常见的运行错误包括:内容服务器134中的延迟问题,其中改变后的值尚未完全传播到内容服务器134;网页内容106中的禁用的槽段;以及由于频率上限、日夜区隔、日期或预算问题而不出现特定内容。
当成功地提取了网页内容106但是客户端系统100(例如web浏览器)显示网页内容106失败时就出现环境错误。例如,客户端系统100可能未启用JavaScript或客户端系统100可能并不被支持。
以示例的目的提供了上述错误,因为许多类型的错误能够在对网页内容106进行定义、请求、派发和显示过程期间出现。
参考图2,如果出现了上述示例错误中的一个,根据一些实施方式,提供调试信息的示例过程200以对来自碰到了错误的网站的文档或内容的请求来开始,所述请求通过在请求中包括标志(或其他指示符)来进行(步骤202)。例如,标志“google_debug”能够以如下形式被添加到网页内容位置的URL中:http://www.website-with-errors.com/index.htm?google_debug。
接着,接收所请求的文档(步骤204),并且测试各种条件以诊断错误的成因(步骤206)。在一些实施方式中,网页内容106中的内容派发(例如JavaScript)标记实现诊断逻辑。例如,网页内容106中的脚本文件能够对各种条件进行测试,并且在存在或缺失这样的条件时,将信息写入到调试用户界面。脚本文件诊断逻辑进行测试以确定涉及但不限于以下内容的错误:发布者102的识别符;网页内容被派发的顺序;槽段是否被定义或禁用;槽段是否已在先前被定义;槽段的属性;所请求的URL是否太长;是否应该为槽段创建iFrame(即,插入到网页中的框架,其中该框架并不绑定到浏览器窗口的侧边);是否应该为槽段创建HTML DIV元素;以及是否已经接收到用于槽段的内容。
在一些实施方式中,在网页内容106中的内容派发(例如JavaScript)标记实现跟踪逻辑。这样的跟踪逻辑能够捕获来自内容服务器134的服务器绑定的URL和响应,所述服务器绑定的URL和响应被显示在调试用户界面中。显示URL中的缺失参数或响应中的中断执行(escaping)问题有助于调试错误。在一些实施方式中,诸如UserAgent(用户代理)的其它信息被捕获并显示。
在一些实施方式中,在每一个URL或请求被通信传递到内容服务器134或发布者102时启动计时器,该计时器在客户端100接收到响应时期满(time-out)。时序信息能够被用来确定在何处碰到环境和运行延迟。
在测试了各条件后,产生调试用户界面(步骤208)并且将与测试的结果有关的信息写入到调试用户界面(步骤210)。在一些实施方式中,通过JavaScript代码创建调试用户界面,其提供了分立的浏览器窗口。JavaScript类提供诸如writeInfo、writeWarning、writeError的方法来向调试窗口写入各种类型的信息。该方法还显示时序信息以示出特定操作所消耗的时间长度,并且示出颜色代码错误和不寻常的情况以识别问题。
图3是用来调试从内容服务器134提取内容中的错误的另一个示例过程300的流程图。向发布者102请求文档或内容106,其中该请求包括指示符(步骤302)。客户端100接收文档或内容106(步骤304)。接着从内容服务器接收内容(步骤306)。在一些实施方式中,从发布者102接收的内容106包括具有向内容服务器134请求内容以及将该内容提供给客户端100的指令的脚本。
接着,对从内容服务器获得内容的指令进行调试(步骤308)。在一些实施方式中,在网页内容106中的内容派发(例如JavaScript)标记实现诊断和/或跟踪逻辑,如以上参考图2所述。显示该调试的结果(步骤310)。在一些实施方式中,JavaScript代码创建了调试用户界面,其提供了分立的浏览器窗口,在其中信息被写入,如上所述。
以下是向内容服务器134请求内容(例如广告)以及显示网页内容106的HTML代码的示例部分。在以下示例中,向内容服务器134请求了一个槽段,并且能够请求额外的槽段。
    <html     xmlns=″http://www.w3.org/1999/xhtml″    lang=″en″
xml:lang=″en″><head>
            <!--download Google Ads JavaScript-->
            <script language=″JavaScript″src=″./google_service.js″>
            </script>
            <script language=″JavaScript″>
                 GS_googleAddAdSenseService(″ca-pub 1″);
                  GS_googleEnableAllServices();
            </script>
            <!--JavaScript for slot TOPSLOT-->
            <script language=″JavaScript″>
                 GA_googleAddSlot(″ca-publ″,″TOPSLOT″);
            </script>
            <!--JavaScript for retrieving ads-->
            <scriqpt language=″JavaScript″>
                 GA_googleFetchAds();
            </script>
        </head>
        <body onload=″″>
            <!--create iframe for TOPSLOT-->
            <script language=″JavaScript″>
                 GA_googleFillSlot(″TOP2SLOT″);
            </script>
            <div id=″content″>
            <p>Sample page content.
            </p>
            </div>
        </body>
        </html>
在该示例中,在首部指派了脚本文件(google_service.js)用于派发作为网页内容106的部分被显示的内容(例如槽段112-120)。发布者已经添加了特定的槽段“TOPSLOT(顶槽段)”;然而,发布者已指示拟填充槽段“TOP2SLOT(顶2槽段)”。槽段TOP2SLOT并不存在,因为其被拼写错误或缺失。当客户端系统100执行该脚本时,诊断逻辑基于该不匹配使用writeError()方法生成警示或使用writeError()方法生成错误。在图4中示出了它的示例,其中由诊断逻辑创建的调试用户界面400指示尚未定义槽段。
图5图示了另一个示例调试用户界面500,其中发布者尚未定义任何槽段并且脚本生成警示。当发布者试图呈现TOPSLOT时,在调试用户界面500中生成错误消息。
图6图示了调试用户界面600,其示出其它的错误,诸如缺失的发布者识别符、TOPSLOT已被定义、缺失的槽段名称、TOPSLOT的重复定义以及其它事务性信息。
本书面描述阐明了本发明的最佳形式,并且提供了示例来描述本发明以及使得本领域的普通技术人员能够制作并使用本发明。本书面描述并不将本发明限定在所阐明的精确形式。因而,虽然已经参考了上述示例而详细描述了本发明,本领域的普通技术人员可以在不背离本发明的范围的情况下进行改动、修改以及变化。

用于常见标记问题的诊断和错误报告.pdf_第1页
第1页 / 共19页
用于常见标记问题的诊断和错误报告.pdf_第2页
第2页 / 共19页
用于常见标记问题的诊断和错误报告.pdf_第3页
第3页 / 共19页
点击查看更多>>
资源描述

《用于常见标记问题的诊断和错误报告.pdf》由会员分享,可在线阅读,更多相关《用于常见标记问题的诊断和错误报告.pdf(19页珍藏版)》请在专利查询网上搜索。

根据在向发布者的请求中的标志的存在,调试内容请求。从发布者接收的文档包含用于调试向内容提供者的对内容的请求的脚本。检查请求以确定信息性的、警示性的和错误的条件的存在。所述条件被写入到调试用户界面中。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1