『壹』 java web 如何統計用戶在網站的行為,比如在
使用切面記錄日誌!把用戶的行為記錄到資料庫
『貳』 juniper srx防火牆在web界面怎樣查看日誌
看不到,web有限制,而且根據版本不同,log文件存放的位置查看方式不通。
一般用cli查看,
先定義一個traceoption的文件名,和需要記錄的log類型,
然後再在策略的最後面then的地方加上log記錄屬性。
然後用命令show log 【你taceoption定義的log名】
web查看也是需要用命令去定義,然後再在web的system文件夾下面去找這個log文件名,很麻煩
『叄』 java怎麼運用切面編程生成日誌
1.首先創建一個自定義註解攔截Controller類,代碼如下
/**
* 自定義註解 攔截Controller
*/
@Target({ ElementType.PARAMETER, ElementType.METHOD })
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface ControllerLog {
String desc() default "";//標示默認列印空
}
2.創建一個列印日誌的切面類,引入切面註解@Aspect,
新建方法代碼如下:
// Controller層切點
@Pointcut("@annotation(org.springframework.web.bind.annotation.RequestMapping)")
public void recordLog() {
}
@Around("recordLog()")
public Object around(ProceedingJoinPoint pjp) throws Throwable {
// ExPatternParser.initLogger();
long start = System.currentTimeMillis();
Object[] args = pjp.getArgs();
String remark = this.(pjp);
Object retVal = null;
try {
retVal = pjp.proceed();
} catch (Throwable e) {
// TODO Auto-generated catch block
logger.error("請求失敗" + e.toString(),e);
remark = remark + "。Exception Cause By " + e.toString();
throw e;
}finally{
long end = System.currentTimeMillis();
long cost = end - start;
//列印訪問日誌
// Controller中所有方法的參數,前兩個分別為:Request,Response
if(args != null && args.length > 0){
Object o = args[0];
if(o instanceof HttpServletRequest){
HttpServletRequest request = (HttpServletRequest) args[0];
PrintLog.visit(request, cost,remark);
}
}
}
return retVal;
}
/**
* 獲取註解中對方法的描述信息 用於Controller層註解
* @param joinPoint切點
* @return 方法描述
* @throws Exception
*/
public static String (ProceedingJoinPoint joinPoint)
throws Exception {
String targetName = joinPoint.getTarget().getClass().getName();
String methodName = joinPoint.getSignature().getName();
Object[] arguments = joinPoint.getArgs();
Class targetClass = Class.forName(targetName);
Method[] methods = targetClass.getMethods();
String description = "";
for (Method method : methods) {
if (method.getName().equals(methodName)) {
Class[] clazzs = method.getParameterTypes();
if (clazzs.length == arguments.length) {
ControllerLog controllerLog = method.getAnnotation(ControllerLog.class);
if(controllerLog !=null){
description =
controllerLog.desc();
}
break;
}
}
}
return description;
}
3.然後在每個Controller類上加上註解:
@ControllerLog(desc = "要 列印的日誌內容")
『肆』 1Web日誌數據分析模型的設計思想與實現
1Web日誌數據分析模型的設計思想
本論文設計平台通過對web日誌文件分析,統計出哪個頁面最受歡迎,訪問者來自哪裡,訪問時段分布情況等。分析結果生成HTML代碼,最終通過瀏覽器以頁面的形式將各種報表呈現在用戶面前。其中要用到目前比較常用的ASP技術,由於要將海量的日誌數據存入,所以還要用到SQL-Server這個功能強大的資料庫。
1.1系統的體系結構
Web日誌數據分析系統的主要用戶是一般企業網站或個人網站管理員,目前常見的網路開發模式共有3種體系結構:兩層Client/Server(C/S)體系結構;三層Client/Server/Database(C/S/D)體系結構;三層Browser/Server/Database(B/S/D)體系結構。綜合考慮本系統的用戶群特點及這三種體系結構特點,最終採用的體系結構是目前國際上流行的「Browser/WebServer/Database」即三層網路結構模型。這種體系結構簡單實用,客戶端只要採用標准瀏覽器與網路進行連接就可以了。
1.2系統功能模塊設計
系統功能模塊是系統與用戶交互的介面,本系統包括:數據預處理模塊、基本分析模塊、智能分析模塊和可視化模塊,系統功能模塊.數據預處理模塊:該模塊主要功能是首先去掉原先存放在關系資料庫中的部分沒有用的原始日誌,然後設置日誌文件格式、采樣方法,依據包含替換規則對數據進行凈化,再將該數據導入源資料庫,形成頁面映射表信息,最後形成用戶表。基本分析模塊:該模塊主要是對網站的`訪問情況進行以下6方面的統計匯總,即時段分析模塊、地域分析模塊、來源統計模塊、客戶端分析模塊、受訪頁分析模塊、搜索引擎模塊。智能分析模塊:該模塊主要功能是利用關聯規則對Web站點的頁面之間的鏈接關系和站點結構進行分析,構建一個新的Web站點拓撲結構,尋有關聯的客戶群體,開展有針對性和個性化的電子商務活動。
2Web日誌數據分析系統功能的實現
2.1數據收集
由於本系統是對Web日誌的分析,所以數據收集部分的工作實際上就是對日誌的收集工作,所以最重要得一點是網站的管理者允許對其日誌文件進行研究,在同意對日誌文件保密的前提下,筆者從電腦商網中國IT商務門戶(www.cnitsw.com)獲取了一段時間的網站日誌文件以此作為分析對象。
2.2數據預處理
數據的預處理過程是將Web日誌整理成適合數據挖掘的數據模型。整個挖掘預處理過程分為數據凈化、用戶識別、會話識別、路徑補充、事務識別5個步驟。
2.3智能分析模塊實現
我們利用了Apriori演算法的思想,但同時對APriori演算法進行了改造,採用了改進的APriori演算法進行頻繁路徑挖掘。改進Apriori是受到APriori演算法的啟發,但它適合頻繁路徑的挖掘。
2.4基本分析模塊實現
基本分析可以分為兩個方面,一是網站整體的訪問統計,另一方面是具體網頁的訪問分析。整體分析可以統計用戶數、點擊數,分析客戶端信息等等;對具體網頁可以統計其訪問量,以分析其受歡迎程度,也可表示其重要程度。這些工作的數據來源是預處理中數據清理階段產生的源資料庫和整個預處理階段後產生的用戶事務資料庫,實現方法也比較簡單,一般都是簡單的統計分析處理。基本分析模塊由時段分析模塊、地域分析模塊、來源統計模塊、客戶端分析模塊、受訪頁分析模塊、搜索引擎分析模塊6個模塊組成。本文以時段分析模塊為例進行闡述。根據日誌中的日期域(data)、時間域(time)以及所花時間域(time-taken)可以統計出每天哪個時段的訪問人數和具體逗留時間,每個小時訪問量的變化,通過一天中每小時的訪問數可以得出站點哪個時間段的訪問人數最多是訪問高峰期,進而分析出訪問人群的職業和上網習慣等相關信息。
Web日誌數據分析是internet信息處理的一個重要應用,目前我們只是實現了一些簡單的功能,還可以對WEB日誌的分析處理上進行某些更詳細的深入分析,譬如可以根據訪問者的登錄時間、訪問頁面、停留時間等信息進行統計分析,然後制定個性化的電子商務營銷策略,幫助電子商務網站在最短的時間內抓住最有效的客戶。還可根據以往時間段的訪問人數統計,對網站未來幾天或者某個時間段的訪問流量進行預測。
作者:吳敏綱 黃傑恆 鄭義平 單位:景德鎮陶瓷學院信息工程學院 景德鎮市第六人民醫院 景德鎮市國稅局直屬分局