跳到主要內容

簡易檢索 / 詳目顯示

研究生: 周彥江
Chou, Yann Jiang
論文名稱: 具會談概念的網路應用程式記錄工具
Session-aware logging utility for web applications
指導教授: 陳恭
Chen, Kung
學位類別: 碩士
Master
系所名稱: 理學院 - 資訊科學系
論文出版年: 2009
畢業學年度: 97
語文別: 中文
論文頁數: 98
中文關鍵詞: 網路應用程式會談記錄剖面導向程式設計
外文關鍵詞: web application, session, log, aspect-oriented programming
相關次數: 點閱:93下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 目前許多網路應用程式(web application),遵循三層式開發架構,並藉由「會談」(session)營造出具有狀態機制的環境。雖然會談能將流程串起,其重要性無庸置疑,卻因分層的關係,造成想要在任一記錄點上,取得會談資訊的困難。
    本研究的目的,即在嘗試以「剖面導向程式設計」(Aspect-Oriented Programming)為基礎,希望能打造一個簡單易用的工具,將「記錄」(log)這種非功能性,屬於橫切面考量的需求,暫時排除在開發階段外,到事後再以挑選的方式,更輕鬆地加入或修改。更重要的是,將會談資訊中的使用者帳號,或可資識別的序號,內嵌在每行記錄裏,因此稱為「具會談概念的記錄」。讓記錄內容的設計者,不需再為了如何封裝、傳遞、拆解而浪費時間。因為記錄與系統開發是獨立的,即使上線後,臨時性的記錄修改需求,也不至於對既有的穩定與效能,造成重大影響,或不可復原的災難性結果。


    Logging is an important part to application development for purposes such as debugging and auditing. While there are many good frameworks and utilities for assisting logging in application development, it is still not an easy task for the logging action to provide enough information for those purposes. Specifically, the user account information in particular or the session information in general is not easy to obtain when we perform logging for a designated backend operation such as database query. The reasons are twofold. Firstly, applications do not use user accounts, but have their own accounts to access database. Secondly, the three-tiered structure of an application makes it difficult to thread the user accounts to the backend for logging.
    This thesis presents an aspect-based utility for Java-based Web applications that enables developer to generate customizable logs with session information, including user accounts. Our tool employs two aspects: one predefined aspect for collecting session information and the other is generic one for producing user-defined logs at designated application points. Specifically, the tool takes a wizard-based approach that guides the user to customize the second aspect for its own target points in a user-friendly manner.

    摘要 i
    Abstract ii
    目錄 iv
    圖目錄 vi
    第一章 1
    1.1 前言 1
    1.2 研究背景 1
    1.2.1 記錄機制 2
    1.2.2 網路應用程式 4
    1.3 研究動機 10
    1.4 研究目的 10
    1.5 論文大綱 11
    第二章 13
    2.1 Apache Logging Services 13
    2.2 Java Servlet API 15
    2.3 Aspect-Oriented Programming 19
    第三章 23
    3.1 設計考量 23
    3.2 使用前、中、後概觀 24
    3.3 剖面設計 26
    3.4 精靈式工具 27
    3.4.1 畫面配置 27
    3.4.2 主要步驟 28
    3.4.3 主要流程 29
    3.4.4 任務概要 30
    第四章 33
    4.1 展示用程式 33
    4.2 展示操作順序 35
    4.3 剖面程式觀察 42
    4.4 記錄配置調整 44
    4.5 檢討 46
    第五章 47
    5.1 結論 47
    5.2 未來展望 47
    參考文獻 49
    附錄一:剖面程式固定部份Immutable.aj原始碼 50
    附錄二:精靈式工具原始碼 54

    【1】 Adrian Colyer. 2004. AspectJ in Action.
    【2】 Bill Griswold, Erik Hilsdale, Jim Hugunin, Mik Kersten, Gregor Kiczales, Jeffery Palm. Aspect-Oriented Programming with AspectJ.
    【3】 Ramnivas Laddad. 2003. AspectJ in Action.
    【4】 侯捷,「Java反射機制」,Run! PC,台北,民國93年9月。
    【5】 http://logging.apache.org/log4j/1.2/manual.html
    【6】 http://java.sun.com/j2ee/reference/whitepapers/j2ee_guide.pdf
    【7】 王森,「Java深度歷險」,麥格羅希爾,台北,民國91年。

    無法下載圖示 此全文未授權公開
    QR CODE
    :::