Package com.taobao.loganalyzer.input.tanxpv.parser

Source Code of com.taobao.loganalyzer.input.tanxpv.parser.CommonSectionParser

package com.taobao.loganalyzer.input.tanxpv.parser;

import com.taobao.loganalyzer.input.tanxpv.common.LogField;
import com.taobao.loganalyzer.input.tanxpv.common.LogParser;
import com.taobao.loganalyzer.input.tanxpv.common.LogRecord;
import com.taobao.loganalyzer.input.tanxpv.common.SectionParser;

/**
* Section 2:共用Section解析类。该Section保存所有的公用信息。
* @see <a href="http://sps.corp.alimama.com/ad/ADExchange/DocLib/Tan(X)%E7%B3%BB%E7%BB%9F%E6%97%A5%E5%BF%97%E8%AE%BE%E8%AE%A1.pdf">点击日志格式</a>
* @author kangtian
*
*/
public class CommonSectionParser implements SectionParser {

    /**
     * 对common Section进行解析
     * b)  section2-common section为空--------不允许
     */
    public boolean parse(LogParser lp, LogRecord lr) {
        if (lp.isCurCharCA()) {
            return false ;
            //  if (!lp.hasNextChar()) return false;
        }
        else{
            //time stamp
            lr.addField("Timestamp",       new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //pid
            lr.addField("Pid",             new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //0:+处理路径
            lr.addField("ProcessPath",     new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //浏览用户IP
            lr.addField("UserIP",          new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //用户Cookie
            lr.addField("Cookie",          new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //Session ID
            lr.addField("SessionID",       new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //cg
            lr.addField("Cg",              new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //展现类型
            lr.addField("ViewType",        new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //展现子类型
            lr.addField("ViewSubCategory", new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //Pub接口代码类型
            lr.addField("PubCodeType",      new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //abtag
            lr.addField("AbTag",           new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //标示是否后续请求
            lr.addField("FollowRequest",   new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //from
            lr.addField("FromURL",         new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //topframe的referrer
            lr.addField("TopFrameRefer",   new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //当前window的referrer
            lr.addField("WindowRefer",     new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //user agent
            lr.addField("UserAgent",       new LogField(LogField.TYPE_STRING, lp.getNextCB()));

            //ref pid
            lr.addField("RefPid",          new LogField(LogField.TYPE_STRING, lp.getNextCA()));

        }

        if (lp.isError())
            return false;

        return true;
    }
}
TOP

Related Classes of com.taobao.loganalyzer.input.tanxpv.parser.CommonSectionParser

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.