首页> 中国专利> 用于常见标记问题的诊断和错误报告

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

摘要

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

著录项

  • 公开/公告号CN101578598A

    专利类型发明专利

  • 公开/公告日2009-11-11

    原文格式PDF

  • 申请/专利权人 谷歌公司;

    申请/专利号CN200780048855.X

  • 发明设计人 斯蒂芬·楚恩;

    申请日2007-10-30

  • 分类号G06F17/22(20060101);

  • 代理机构11219 中原信达知识产权代理有限责任公司;

  • 代理人张焕生;安翔

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 22:57:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-02-09

    专利权人的姓名或者名称、地址的变更 IPC(主分类):G06F17/22 变更前: 变更后: 申请日:20071030

    专利权人的姓名或者名称、地址的变更

  • 2012-05-30

    授权

    授权

  • 2010-01-13

    实质审查的生效

    实质审查的生效

  • 2009-11-11

    公开

    公开

说明书

技术领域

本公开涉及网络上的内容请求。

背景技术

显示在网页上的内容能够由一个或多个内容服务器响应于内容请 求而生成。发布者能够将特定于内容服务器的标记嵌入在网页中用以 从内容服务器派发内容(例如广告)给他们的访问者。标记被用来描 述在给定网页中存在什么内容槽段(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的 重复定义以及其它事务性信息。

本书面描述阐明了本发明的最佳形式,并且提供了示例来描述本 发明以及使得本领域的普通技术人员能够制作并使用本发明。本书面 描述并不将本发明限定在所阐明的精确形式。因而,虽然已经参考了 上述示例而详细描述了本发明,本领域的普通技术人员可以在不背离 本发明的范围的情况下进行改动、修改以及变化。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号