Publications-Theses

Article View/Open

Publication Export

Google ScholarTM

NCCU Library

Citation Infomation

Related Publications in TAIR

題名 具會談概念的網路應用程式記錄工具
Session-aware logging utility for web applications
作者 周彥江
Chou, Yann Jiang
貢獻者 陳恭
Chen, Kung
周彥江
Chou, Yann Jiang
關鍵詞 網路應用程式
會談
記錄
剖面導向程式設計
web application
session
log
aspect-oriented programming
日期 2008
上傳時間 11-Sep-2009 16:04:21 (UTC+8)
摘要 目前許多網路應用程式(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.
參考文獻 【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年。
描述 碩士
國立政治大學
資訊科學學系
95971015
97
資料來源 http://thesis.lib.nccu.edu.tw/record/#G0095971015
資料類型 thesis
dc.contributor.advisor 陳恭zh_TW
dc.contributor.advisor Chen, Kungen_US
dc.contributor.author (Authors) 周彥江zh_TW
dc.contributor.author (Authors) Chou, Yann Jiangen_US
dc.creator (作者) 周彥江zh_TW
dc.creator (作者) Chou, Yann Jiangen_US
dc.date (日期) 2008en_US
dc.date.accessioned 11-Sep-2009 16:04:21 (UTC+8)-
dc.date.available 11-Sep-2009 16:04:21 (UTC+8)-
dc.date.issued (上傳時間) 11-Sep-2009 16:04:21 (UTC+8)-
dc.identifier (Other Identifiers) G0095971015en_US
dc.identifier.uri (URI) https://nccur.lib.nccu.edu.tw/handle/140.119/29693-
dc.description (描述) 碩士zh_TW
dc.description (描述) 國立政治大學zh_TW
dc.description (描述) 資訊科學學系zh_TW
dc.description (描述) 95971015zh_TW
dc.description (描述) 97zh_TW
dc.description.abstract (摘要) 目前許多網路應用程式(web application),遵循三層式開發架構,並藉由「會談」(session)營造出具有狀態機制的環境。雖然會談能將流程串起,其重要性無庸置疑,卻因分層的關係,造成想要在任一記錄點上,取得會談資訊的困難。
     本研究的目的,即在嘗試以「剖面導向程式設計」(Aspect-Oriented Programming)為基礎,希望能打造一個簡單易用的工具,將「記錄」(log)這種非功能性,屬於橫切面考量的需求,暫時排除在開發階段外,到事後再以挑選的方式,更輕鬆地加入或修改。更重要的是,將會談資訊中的使用者帳號,或可資識別的序號,內嵌在每行記錄裏,因此稱為「具會談概念的記錄」。讓記錄內容的設計者,不需再為了如何封裝、傳遞、拆解而浪費時間。因為記錄與系統開發是獨立的,即使上線後,臨時性的記錄修改需求,也不至於對既有的穩定與效能,造成重大影響,或不可復原的災難性結果。
zh_TW
dc.description.abstract (摘要) 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.
en_US
dc.description.tableofcontents 摘要 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
zh_TW
dc.language.iso en_US-
dc.source.uri (資料來源) http://thesis.lib.nccu.edu.tw/record/#G0095971015en_US
dc.subject (關鍵詞) 網路應用程式zh_TW
dc.subject (關鍵詞) 會談zh_TW
dc.subject (關鍵詞) 記錄zh_TW
dc.subject (關鍵詞) 剖面導向程式設計zh_TW
dc.subject (關鍵詞) web applicationen_US
dc.subject (關鍵詞) sessionen_US
dc.subject (關鍵詞) logen_US
dc.subject (關鍵詞) aspect-oriented programmingen_US
dc.title (題名) 具會談概念的網路應用程式記錄工具zh_TW
dc.title (題名) Session-aware logging utility for web applicationsen_US
dc.type (資料類型) thesisen
dc.relation.reference (參考文獻) 【1】 Adrian Colyer. 2004. AspectJ in Action.zh_TW
dc.relation.reference (參考文獻) 【2】 Bill Griswold, Erik Hilsdale, Jim Hugunin, Mik Kersten, Gregor Kiczales, Jeffery Palm. Aspect-Oriented Programming with AspectJ.zh_TW
dc.relation.reference (參考文獻) 【3】 Ramnivas Laddad. 2003. AspectJ in Action.zh_TW
dc.relation.reference (參考文獻) 【4】 侯捷,「Java反射機制」,Run! PC,台北,民國93年9月。zh_TW
dc.relation.reference (參考文獻) 【5】 http://logging.apache.org/log4j/1.2/manual.htmlzh_TW
dc.relation.reference (參考文獻) 【6】 http://java.sun.com/j2ee/reference/whitepapers/j2ee_guide.pdfzh_TW
dc.relation.reference (參考文獻) 【7】 王森,「Java深度歷險」,麥格羅希爾,台北,民國91年。zh_TW