This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git


The following commit(s) were added to refs/heads/master by this push:
     new 7ad8046  [SCB-1825] client outlog: rename item and delete README.md 
(#1665)
7ad8046 is described below

commit 7ad804699ee9a7a1ff06515657b470b882b23b90
Author: heyile <2513931...@qq.com>
AuthorDate: Wed Mar 25 21:22:50 2020 +0800

    [SCB-1825] client outlog: rename item and delete README.md (#1665)
---
 .../servicecomb/common/accessLog/core/README.md    | 373 ---------------------
 ...ss.java => ConfigurableDatetimeAccessItem.java} |   6 +-
 ...CookieItemAccess.java => CookieAccessItem.java} |   4 +-
 ...ess.java => DurationMillisecondAccessItem.java} |   2 +-
 ...emAccess.java => DurationSecondAccessItem.java} |   2 +-
 ...cess.java => FirstLineOfRequestAccessItem.java} |   8 +-
 ...odItemAccess.java => HttpMethodAccessItem.java} |   2 +-
 ...usItemAccess.java => HttpStatusAccessItem.java} |   4 +-
 ...ccess.java => InvocationContextAccessItem.java} |   4 +-
 ...ostItemAccess.java => LocalHostAccessItem.java} |   2 +-
 ...ortItemAccess.java => LocalPortAccessItem.java} |   2 +-
 ...extItemAccess.java => PlainTextAccessItem.java} |   4 +-
 ...gItemAccess.java => QueryStringAccessItem.java} |   2 +-
 ...stItemAccess.java => RemoteHostAccessItem.java} |   2 +-
 ...temAccess.java => RequestHeaderAccessItem.java} |   4 +-
 ...mAccess.java => RequestProtocolAccessItem.java} |   2 +-
 ...emAccess.java => ResponseHeaderAccessItem.java} |   4 +-
 ...ItemAccess.java => ResponseSizeAccessItem.java} |   4 +-
 ...aceIdItemAccess.java => TraceIdAccessItem.java} |   8 +-
 ...ortItemAccess.java => TransportAccessItem.java} |   2 +-
 ...lPathItemAccess.java => UrlPathAccessItem.java} |   2 +-
 ...Access.java => UrlPathWithQueryAccessItem.java} |   2 +-
 .../core/parser/AccessLogItemCreator.java          |   4 +-
 ...DefaultCompositeVertxRestAccessLogItemMeta.java |  86 ++---
 .../impl/VertxRestAccessLogPatternParser.java      |  10 +-
 .../accessLog/core/AccessLogGeneratorTest.java     |  30 +-
 .../core/element/impl/CookieItemTest.java          |   2 +-
 .../element/impl/DatetimeConfigurableItemTest.java |  32 +-
 .../element/impl/DurationMillisecondItemTest.java  |   2 +-
 .../core/element/impl/DurationSecondItemTest.java  |   2 +-
 .../element/impl/FirstLineOfRequestItemTest.java   |   2 +-
 .../core/element/impl/HttpMethodItemTest.java      |   2 +-
 .../core/element/impl/HttpStatusItemTest.java      |   2 +-
 .../element/impl/InvocationContextItemTest.java    |  16 +-
 .../core/element/impl/LocalHostItemTest.java       |  12 +-
 .../core/element/impl/LocalPortItemTest.java       |   2 +-
 .../core/element/impl/PlainTextItemTest.java       |   4 +-
 .../core/element/impl/QueryStringItemTest.java     |   2 +-
 .../core/element/impl/RemoteHostItemTest.java      |   2 +-
 .../core/element/impl/RequestHeaderItemTest.java   |   2 +-
 .../core/element/impl/RequestProtocolItemTest.java |   2 +-
 .../core/element/impl/ResponseHeaderItemTest.java  |   2 +-
 .../core/element/impl/ResponseSizeItemTest.java    |   2 +-
 .../core/element/impl/TraceIdItemTest.java         |   2 +-
 .../core/element/impl/TransportItemTest.java       |   2 +-
 .../core/element/impl/UrlPathItemTest.java         |   2 +-
 .../element/impl/UrlPathWithQueryItemTest.java     |   2 +-
 ...sLogItem.java => UserDefinedAccessLogItem.java} |   4 +-
 ...va => UserDefinedAccessLogItemLowPriority.java} |   4 +-
 ...=> TestCompositeExtendedAccessLogItemMeta.java} |   6 +-
 ...va => TestSingleExtendedAccessLogItemMeta.java} |   8 +-
 .../impl/VertxRestAccessLogPatternParserTest.java  | 154 ++++-----
 ...ccessLog.core.parser.VertxRestAccessLogItemMeta |   4 +-
 .../transport/rest/vertx/RestServerVerticle.java   |   4 +-
 54 files changed, 242 insertions(+), 615 deletions(-)

diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/README.md
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/README.md
deleted file mode 100644
index 7b631e0..0000000
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/README.md
+++ /dev/null
@@ -1,373 +0,0 @@
-## 概念阐述
-
-ServiceComb提供了基于Vert.x的access log 和 request log功能。当用户使用REST over 
Vertx通信方式时,可以通过简单的配置启用access log打印功能。当用户 client 端进行远程调用时,可以通过简单的配置启用request 
log打印功能
-
-## 场景描述
-
-1. 用户在调试服务时可能需要开启access log。在使用REST over servlet通信方式的情况下,可以使用web容器的access 
log功能;而在使用REST over Vertx通信方式的情况下,可以使用ServiceComb提供的一套access log功能。
-
-2. 用户想要跟踪,记录客户端远程调用信息, 可以开启 request log。request log 同时支持记录 rest 和 highway 
远程调用方式。
-
-## 配置说明
-
-### 启用Access Log and Request Log
-
-用户需要在microservice.yaml文件中增加配置以启用access log 和 request log,配置示例如下:
-
-```yaml
-servicecomb:
-  accesslog:
-    enabled: true  ## server 端 启用access log
-    pattern: "%h - - %t %r %s %B %D" ##  server 端 自定义 access log 日志格式
-    request:
-      enabled: true  ## client 端开启 request log
-      pattern: "%h %SCB-transport - - %t %r %s %D" ## client 端自定义 request log 
日志格式
-```
-
-_**Access log & Request log 配置项说明**_
-
-| 配置项 | 取值范围 | 默认值 | 说明 |
-| :--- | :--- | :--- | :--- |
-| servicecomb.accesslog.enabled | true/false | **false** | 如果为true则启用access 
log,否则不启用 |
-| servicecomb.accesslog.pattern | 表示打印格式的字符串 | **"%h - - %t %r %s %B %D"** |  
配置项见_**日志元素说明表**_ |
-| servicecomb.accesslog.request.enabled | true/false | **false** | 
如果为true则启用request log,否则不启用 |
-| servicecomb.accesslog.request.pattern | 表示打印格式的字符串 | **"%h %SCB-transport - 
- %t %r %s %D"** |  配置项见_**日志元素说明表**_ |
-
-> _**说明:**_
->
-> * 以上两个配置项均可省略,若省略则使用默认值。
-
-### 日志格式配置
-
-目前可用的日志元素配置项见 ***日志元素说明表(Apache & W3C)*** 和 ***日志元素说明表(ServiceComb)*** 。
-
-_**日志元素说明表 (Apache & W3C)**_
-
-| 元素名称 | Apache日志格式 | W3C日志格式 | 说明 |
-| :--- | :--- | :--- | :--- |
-| HTTP method | %m | cs-method | - |
-| HTTP status | %s | sc-status | - |
-| Duration in second | %T | - | - |
-| Duration in millisecond | %D | - | - |
-| Remote hostname | %h | - | - |
-| Local hostname | %v | - | - |
-| Local port | %p | - | - |
-| Size of response | %B | - | 如果消息体长度为零则打印"0" |
-| Size of response | %b | - | 如果消息体长度为零则打印"-" |
-| First line of request | %r | - | 包含HTTP Method、Uri、Http版本三部分内容 |
-| URI path | %U | cs-uri-stem | - |
-| Query string | %q | cs-uri-query | - |
-| URI path and query string | - | cs-uri | - |
-| Request protocol | %H | - | - |
-| Datetime the request is received | %t | - | 按照默认设置打印时间戳,格式为"EEE, dd MMM yyyy 
HH:mm:ss zzz",语言为英文,时区为GMT |
-| Configurable datetime the request is received | %{PATTERN}t | - | 
按照指定的格式打印时间戳,语言为英文,时区为GMT |
-| Configurable datetime the request is received | 
%{PATTERN&#124;TIMEZONE&#124;LOCALE}t | - | 
按照指定的格式、语言、时区打印时间戳。允许省略其中的某部分配置(但两个分隔符号"&#124;"不可省略)。 |
-| Request header | %{VARNAME}i | - | 如果没有找到指定的header,则打印"-" |
-| Response header | %{VARNAME}o | - | 如果没有找到指定的header,则打印"-" |
-| Cookie | %{VARNAME}C | - | 如果没有找到指定的cookie,则打印"-" |
-
-_**日志元素说明表(ServiceComb)**_
-
-| Element | Placeholder | Comment |
-| :----   | :---------- | :------ |
-| TraceId | %SCB-traceId | 打印ServiceComb生成的trace id,找不到则打印"-" |
-| Invocation Context | %{VARNAME}SCB-ctx | 打印key为`VARNAME`的invocation 
context值,找不到则打印"-" |
-| Transport Method | %SCB-transport | 打印当前调用的 **transport method** 。 `rest` 或者 
`highway`|
-
-_**Access log 与 Request log的日志元素对比**_
-
-| 元素名称 | Apache&W3C日志格式 | access log |access log 说明 | request log | request 
log说明 |
-| --- | --- | --- | --- | --- | --- |
-| HTTP method | %m & cs-method | support | - | support | - |
-| HTTP status | %s & sc-status | support | - | support | - |
-| Duration in second | %T | support | - | support | - |
-| Duration in millisecond | %D | support | - | support | - |
-| Remote hostname | %h |  support | - | support | - |
-| Local hostname | %v | support | - | support | - |
-| Local port | %p | support | - | support | - |
-| Size of response | %B | support | 如果消息体长度为零则打印"0" | unsupported| - |
-| Size of response | %b | support | 如果消息体长度为零则打印"-" | unsupported| - |
-| First line of request |  %r | support | 包含HTTP Method、Uri、Http版本三部分内容| 
support | 包含HTTP Method、Uri、Http版本三部分内容|
-|URI path| %U & cs-uri-stem | support | - | support | - |
-|Query string | %q & cs-uri-query | support | - | support | - |
-|URI path and query string | cs-uri  |  support | - | support | - |
-| Request protocol |  %H | support | - | support | - |
-| Datetime of the request | %t | support | 收到请求的时间。默认格式为"EEE, dd MMM yyyy 
HH:mm:ss zzz",语言为英文,时区为GMT | support | 发送请求的时间。默认格式为"EEE, dd MMM yyyy HH:mm:ss 
zzz",语言为英文,时区为GMT|
-|Configurable datetime the request of the request | %{PATTERN}t | support | 
收到请求的时间。按照指定的格式打印时间戳,语言为英文,时区为GMT | support | 发送请求的时间。按照指定的格式打印时间戳,语言为英文,时区为GMT|
-|Configurable datetime the request of the request | 
%{PATTERN&#124;TIMEZONE&#124;LOCALE}t | support | 
收到请求的时间。按照指定的格式、语言、时区打印时间戳。允许省略其中的某部分配置(但两个分隔符号"&#124;"不可省略)。| support | 
发送请求的时间。按照指定的格式、语言、时区打印时间戳。允许省略其中的某部分配置(但两个分隔符号"&#124;"不可省略)。|
-|Request header | %{VARNAME}i | support | 如果没有找到指定的header,则打印"-" | support | 
如果没有找到指定的header,则打印"-" | 
-|Response header | %{VARNAME}o | support | 如果没有找到指定的header,则打印"-"| support | 
如果没有找到指定的header,则打印"-" |
-|Cookie | %{VARNAME}C | support |  如果没有找到指定的cookie,则打印"-" | support |  
如果没有找到指定的cookie,则打印"-" | 
-|TraceId | %SCB-traceId | support |打印ServiceComb生成的trace id,找不到则打印"-" | 
support |打印ServiceComb生成的trace id,找不到则打印"-" |
-|Invocation Context | %{VARNAME}SCB-ctx | support | 打印key为`VARNAME`的invocation 
context值,找不到则打印"-" |support | 打印key为`VARNAME`的invocation context值,找不到则打印"-" |
-|transport method | %SCB-transport | unsupported | 只支持 rest 形式调用 | support | 
调用使用的transport method|
-
-
-### 日志输出文件配置
-
-Access 
log的日志打印实现框架默认采用Log4j,并提供了一套默认的日志文件配置。用户可以在自己定义的log4j.properties文件中覆写这些配置。用户可配置的日志文件配置项见下表。
-
-_**日志文件配置项**_
-
-| 配置项 | 默认值 | 含义 | 说明 |
-| :--- | :--- | :--- | :--- |
-| paas.logs.accesslog.dir | ${paas.logs.dir} | 日志文件输出目录 | 与普通日志输出到同一个目录中 |
-| paas.logs.accesslog.file | access.log | 日志文件名 | - |
-| log4j.appender.access.MaxBackupIndex | 10 | 最大保存的日志滚动文件个数 | - |
-| log4j.appender.access.MaxFileSize | 20MB | 日志文件最大体积 | 正在记录的文件达到此大小时触发日志滚动存储 |
-| log4j.appender.access.logPermission | rw------- | 日志文件权限 | - |
-| paas.logs.requestlog.dir | ${paas.logs.dir} | 日志文件输出目录 | 与普通日志输出到同一个目录中 |
-| paas.logs.requestlog.file | request.log | 日志文件名 | - |
-| log4j.appender.request.MaxBackupIndex | 10 | 最大保存的日志滚动文件个数 | - |
-| log4j.appender.request.MaxFileSize | 20MB | 日志文件最大体积 | 正在记录的文件达到此大小时触发日志滚动存储 
|
-| log4j.appender.request.logPermission | rw------- | 日志文件权限 | - |
-
-> _**注意:**_  
-> 由于ServiceComb的日志打印功能只依赖slf4j的接口,因此用户可以选择其他日志打印框架,选择其他日志打印框架时需要用户自行配置日志文件输出选项。
-
-### 日志实现框架切换为logback
-
-> 针对采用logback作为日志打印框架的项目,需要将日志打印框架依赖从Log4j改为logback并添加部分配置以使access log功能正常生效。
-
-#### 1. 排除Log4j依赖
-
-在将日志实现框架切换为logback之前,需要检查项目的依赖,从中排除掉Log4j相关的依赖项。在项目中运行maven命令`dependency:tree`,找出其中依赖了Log4j的ServiceComb组件,在其`<dependency>`依赖项中添加如下配置:
-
-```xml
-<exclusion>
-  <groupId>org.slf4j</groupId>
-  <artifactId>slf4j-log4j12</artifactId>
-</exclusion>
-```
-
-#### 2. 添加logback依赖
-
-在pom文件中添加logback的依赖项:
-
-```xml
-<dependency>
-  <groupId>org.slf4j</groupId>
-  <artifactId>slf4j-api</artifactId>
-</dependency>
-<dependency>
-  <groupId>ch.qos.logback</groupId>
-  <artifactId>logback-classic</artifactId>
-</dependency>
-<dependency>
-  <groupId>ch.qos.logback</groupId>
-  <artifactId>logback-core</artifactId>
-</dependency>
-```
-
-#### 3. 配置access log & request log 组件的logger
-
-由于ServiceComb提供的日志打印组件是获取名为`accesslog` & `requestlog` 的logger来打印access log  和 
request log ,因此将日志实现框架从Log4j切换为logback的关键就是提供一个名为`accesslog` & `requestlog` 的 
Logger,并为其配置好日志输出文件。以下是 **access log** & **request log** 
在logback配置文件中的配置示例(本示例仅展示access log & request log相关的配置,其他日志配置均省略):
-
-```xml
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration>
-  <!-- 用户可根据需要自定义appender -->
-  <appender name="ACCESSLOG" 
class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>./logs/access.log</file>
-    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-      <fileNamePattern>./logs/access-%d{yyyy-MM-dd}.log</fileNamePattern>
-    </rollingPolicy>
-    <!-- 注意:由于access log的内容是在代码中完成格式化的,因此这里只需输出message即可,无需添加额外的格式 -->
-    <encoder>
-      <pattern>%msg%n</pattern>
-    </encoder>
-  </appender>
-  <appender name="REQUESTLOG" 
class="ch.qos.logback.core.rolling.RollingFileAppender">
-    <file>./logs/request.log</file>
-    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-      <fileNamePattern>./logs/access-%d{yyyy-MM-dd}.log</fileNamePattern>
-    </rollingPolicy>
-    <!-- 注意:由于request log的内容是在代码中完成格式化的,因此这里只需输出message即可,无需添加额外的格式 -->
-    <encoder>
-      <pattern>%msg%n</pattern>
-    </encoder>
-  </appender>
-
-  <!-- 提供一个名为"accesslog"的logger供access log打印组件使用 -->
-  <logger name="accesslog" level="INFO" additivity="false">
-    <appender-ref ref="ACCESSLOG" />
-  </logger>
-  <!-- 提供一个名为"requestlog"的logger供request log打印组件使用 -->
-  <logger name="requestlog" level="INFO" additivity="false">
-    <appender-ref ref="REQUESTLOG" />
-  </logger>
-
-</configuration>
-```
-
-### 自定义扩展Access Log & Request Log
-
-用户可以利用ServiceComb提供的AccessLogItem扩展机制,定制自己的AccessLogItem, 我们把 Request Log 
也当做一种 Access Log。
-
-#### 相关类说明
-
-1.  **AccessLogItem**
-
-```java
-public interface AccessLogItem<T> {
-  // 从Server端获取信息,打印 Access Log 日志
-  default void appendServerFormattedItem(ServerAccessLogEvent accessLogEvent, 
StringBuilder builder) {
-  }
-
-  // 从Client 端获取信息, 打印 Request Log
-  default void appendClientFormattedItem(InvocationFinishEvent clientLogEvent, 
StringBuilder builder) {
-  }
-}
-```
-
-> **AccessLogItem** 的定义如上所示
->
-> * **Server 端** 每收到一个请求,会触发一次 Access Log 日志打印。**Client 端** 每次对外远程调用结束,会触发一次 
Request Log 日志打印。  
-> 
-> * 每次日志打印,SDK 都会遍历有效的 `AccessLogItem` 
,调用对应的方法获取此Item生成的Log片段,并将全部片段拼接成一条Log打印到日志文件中。 
-
-
-2. **VertxRestAccessLogItemMeta**
-
-  ```java
-  // pattern占位符前缀
-  protected String prefix;
-  // pattern占位符后缀
-  protected String suffix;
-  // 优先级序号
-  protected int order;
-  // AccessLogItem构造器
-  protected AccessLogItemCreator<RoutingContext> accessLogItemCreator;
-  ```
-  
-`VertxRestAccessLogItemMeta` 
包含如上属性,它定义了ServiceComb如何解析pattern字符串以获得特定的AccessLogItem。
-  
-*  
如果用户想要定义一个占位符为`%user-defined`的`AccessLogItem`,则需要声明一个`VertxRestAccessLogItemMeta`的子类,设置prefix="%user-defined",suffix=null,当`AccessLogPatternParser`解析到"%user-defined"时,从此meta类中取得`AccessLogItemCreator`创建对应的`AccessLogItem`。**注意**:由于"%user-defined"占位符中没有变量部分,因此调用`AccessLogItemCreator`传入的配置参数为null。
-  
-*  
如果用户想要定义一个占位符为`%{VARNAME}user-defined`的`AccessLogItem`,则声明的`VertxRestAccessLogItemMeta`子类中,设置prefix="%{",suffix="}user-defined",当`AccessLogPatternParser`解析到"%{VARNAME}user-defined"时,会截取出"VARNAME"作为配置参数传入`AccessLogItemCreator`,创建一个`AccessLogItem`。
-
-  
`VertxRestAccessLogItemMeta`有一个子类`CompositeVertxRestAccessLogItemMeta`,当用户需要定义多个AccessLogItem时,可以将多个`VertxRestAccessLogItemMeta`聚合到`CompositeVertxRestAccessLogItemMeta`中。Parser加载到类型为`CompositeVertxRestAccessLogItemMeta`的AccessLogItemMeta时,会调用其`getAccessLogItemMetas()`方法获得一组AccessLogItemMeta。`VertxRestAccessLogItemMeta`使用SPI机制加载,而`CompositeVertxRestAccessLogItemMeta`可以让用户只在SPI配置文件中配置一条记录就加载多条meta信息,给了用户更灵活的选择。
-
-3. **AccessLogItemCreator**
-
-  ```java
-  public interface AccessLogItemCreator<T> {
-    // 接收配置值,返回一个AccessLogItem。如果AccessLogItem的占位符没有可变的配置值部分,则此方法会接收到null。
-    AccessLogItem<T> createItem(String config);
-  }
-  ```
-
-  
用户通过设置在自定义的`VertxRestAccessLogItemMeta`中的`AccessLogItemCreator`实例化自己的`AccessLogItem`。由于这是一个函数式接口,当`AccessLogItem`的初始化方式较简单时,可以直接使用Lambda表达式定义Creator,以简化开发。
-
-#### AccessLogItemMeta的匹配规则
-
-AccessLogItemMeta加载进Parser后,会进行一次排序。Parser解析pattern串时会从前到后匹配meta list,总的匹配规则如下:
-
-1. 优先匹配高优先级的meta。
-
-2. 优先匹配有后缀的meta,当匹配上多个有后缀meta时,取前后缀相距最小的一个。
-
-3. 优先匹配占位符长的meta,例如有两个meta,"%abc"和"%a",如果匹配中了"%abc"则直接返回,不再匹配"%a"。
-
-#### 示例说明
-
-1. 扩展自定义AccessLogItem
-
-首先用户需要`AccessLogItem`接口实现自己的item:
- 
-```java
-  public class UserDefinedAccessLogItem implements 
AccessLogItem<RoutingContext> {
-    private String config;
-
-    public UserDefinedAccessLogItem(String config) {
-      this.config = config;
-    }
-
-    @Override
-    public void appendServerFormattedItem(ServerAccessLogEvent accessLogEvent, 
StringBuilder builder) {
-    builder.append("user-defined--server-")
-        .append(accessLogEvent.getRoutingContext().response().getStatusCode())
-        .append("-")
-        .append(config);
-    }
-    
-    @Override
-    public void appendClientFormattedItem(InvocationFinishEvent 
clientLogEvent, StringBuilder builder) {
-    builder.append("user-server-defined-")
-        .append(clientLogEvent.getResponse().getStatus())
-        .append("-")
-        .append(config);
-    }
-  }
- ```
-
-2. 定义AccessLogItem的meta类
-
-  
继承`VertxRestAccessLogItemMeta`或`CompositeVertxRestAccessLogItemMeta`类,定义AccessLogItem的前后缀等信息:
-  
-```java
-public class UserDefinedCompositeExtendedAccessLogItemMeta extends 
CompositeVertxRestAccessLogItemMeta {
-private static final List<VertxRestAccessLogItemMeta> META_LIST = new 
ArrayList<>();
-
-static {
-  META_LIST.add(new VertxRestAccessLogItemMeta("%{", "}user-defined", 
UserDefinedAccessLogItem::new));
-}
-
-@Override
-public List<VertxRestAccessLogItemMeta> getAccessLogItemMetas() {
-  return META_LIST;
-}
-}
-```
-
-3. 配置SPI加载文件
-
-  
在`resources/META-INF/services/`目录下定义一个名为"org.apache.servicecomb.transport.rest.vertx.accesslog.parser.VertxRestAccessLogItemMeta"的文件,将上一步中定义的meta类完整类名填写到该文件中,供Parser加载meta类。
-
-4. 配置 Access Log的 pattern
-
-```yaml
-# 服务端配置
-servicecomb:
-  accesslog:
-    enabled: true ## 应用作为服务端,开启 Access log
-    pattern: "%{param}user-defined" ## Access log 日志格式
-    request:   
-      enabled: true  ## 应用作为客户端,开启 Request log
-      pattern: "%{param}user-defined" ## Request log 日志格式
-```
-
-以服务端为例, 运行服务触发Access Log打印,假设请求返回状态码是 200,则可以看到Access Log打印内容为 
"`user-defined--server-200-param`"。
-
-## 示例代码
-
-### microservice.yaml文件中的配置
-
-```yaml
-## other configurations omitted
-servicecomb:
-  accesslog:
-    enabled: true ## 应用作为服务端,开启 Access log
-    pattern: "%h - - %t %r %s %B %D" ## Access log 日志格式
-    request:   
-      enabled: true  ## 应用作为客户端,开启 Request log
-      pattern: "%h %SCB-transport - - %t %r %s %D" ## Request log 日志格式
-    
-```
-
-### log4j.properties文件中的配置
-
-```properties
-# log configuration item
-paas.logs.dir=../logs/
-paas.logs.accesslog.file=access.log
-paas.logs.requestlog.file=request.log
-# access log File appender
-log4j.appender.access.MaxBackupIndex=10
-log4j.appender.access.MaxFileSize=20MB
-log4j.appender.access.logPermission=rw-------
-# request log File appender
-log4j.appender.request.MaxBackupIndex=10
-log4j.appender.request.MaxFileSize=20MB
-log4j.appender.request.logPermission=rw-------
-```
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DatetimeConfigurableItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ConfigurableDatetimeAccessItem.java
similarity index 96%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DatetimeConfigurableItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ConfigurableDatetimeAccessItem.java
index 3877361..31a38d7 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DatetimeConfigurableItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ConfigurableDatetimeAccessItem.java
@@ -32,7 +32,7 @@ import io.vertx.ext.web.RoutingContext;
 /**
  * Configurable dateTime element.
  */
-public class DatetimeConfigurableItemAccess implements 
AccessLogItem<RoutingContext> {
+public class ConfigurableDatetimeAccessItem implements 
AccessLogItem<RoutingContext> {
 
   public static final String DEFAULT_DATETIME_PATTERN = "EEE, dd MMM yyyy 
HH:mm:ss zzz";
 
@@ -49,7 +49,7 @@ public class DatetimeConfigurableItemAccess implements 
AccessLogItem<RoutingCont
   /**
    * all configuration is set to default value.
    */
-  public DatetimeConfigurableItemAccess() {
+  public ConfigurableDatetimeAccessItem() {
     this(DEFAULT_DATETIME_PATTERN);
   }
 
@@ -57,7 +57,7 @@ public class DatetimeConfigurableItemAccess implements 
AccessLogItem<RoutingCont
    * the configurations not specified will get a default value.
    * @param config the format of configuration is "PATTERN|TIMEZONE|LOCALE" or 
"PATTERN". It depends on whether the config contains the separator "|"
    */
-  public DatetimeConfigurableItemAccess(String config) {
+  public ConfigurableDatetimeAccessItem(String config) {
     String[] configArr = null;
     if (config.contains("|")) {
       configArr = splitConfig(config);
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieAccessItem.java
similarity index 96%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieAccessItem.java
index a0965ba..01b3218 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieAccessItem.java
@@ -29,13 +29,13 @@ import 
org.apache.servicecomb.core.event.ServerAccessLogEvent;
 import io.vertx.core.http.Cookie;
 import io.vertx.ext.web.RoutingContext;
 
-public class CookieItemAccess implements AccessLogItem<RoutingContext> {
+public class CookieAccessItem implements AccessLogItem<RoutingContext> {
 
   public static final String RESULT_NOT_FOUND = "-";
 
   private final String varName;
 
-  public CookieItemAccess(String varName) {
+  public CookieAccessItem(String varName) {
     this.varName = varName;
   }
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondAccessItem.java
similarity index 96%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondAccessItem.java
index 10e9f1e..e0bde4a 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondAccessItem.java
@@ -23,7 +23,7 @@ import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 
 import io.vertx.ext.web.RoutingContext;
 
-public class DurationMillisecondItemAccess implements 
AccessLogItem<RoutingContext> {
+public class DurationMillisecondAccessItem implements 
AccessLogItem<RoutingContext> {
   @Override
   public void appendServerFormattedItem(ServerAccessLogEvent accessLogEvent, 
StringBuilder builder) {
     builder.append(accessLogEvent.getMilliEndTime() - 
accessLogEvent.getMilliStartTime());
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondAccessItem.java
similarity index 96%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondAccessItem.java
index def9eea..2da3402 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondAccessItem.java
@@ -24,7 +24,7 @@ import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 
 import io.vertx.ext.web.RoutingContext;
 
-public class DurationSecondItemAccess implements AccessLogItem<RoutingContext> 
{
+public class DurationSecondAccessItem implements AccessLogItem<RoutingContext> 
{
 
   @Override
   public void appendServerFormattedItem(ServerAccessLogEvent accessLogEvent, 
StringBuilder builder) {
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestAccessItem.java
similarity index 85%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestAccessItem.java
index 95b7831..16f00ee 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestAccessItem.java
@@ -23,12 +23,12 @@ import 
org.apache.servicecomb.core.event.ServerAccessLogEvent;
 
 import io.vertx.ext.web.RoutingContext;
 
-public class FirstLineOfRequestItemAccess implements 
AccessLogItem<RoutingContext> {
-  private static final HttpMethodItemAccess METHOD_ELEMENT = new 
HttpMethodItemAccess();
+public class FirstLineOfRequestAccessItem implements 
AccessLogItem<RoutingContext> {
+  private static final HttpMethodAccessItem METHOD_ELEMENT = new 
HttpMethodAccessItem();
 
-  private static final UrlPathItemAccess URI_PATH_ONLY_ELEMENT = new 
UrlPathItemAccess();
+  private static final UrlPathAccessItem URI_PATH_ONLY_ELEMENT = new 
UrlPathAccessItem();
 
-  private static final RequestProtocolItemAccess VERSION_OR_PROTOCOL_ELEMENT = 
new RequestProtocolItemAccess();
+  private static final RequestProtocolAccessItem VERSION_OR_PROTOCOL_ELEMENT = 
new RequestProtocolAccessItem();
 
   @Override
   public void appendServerFormattedItem(ServerAccessLogEvent accessLogEvent, 
StringBuilder builder) {
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodAccessItem.java
index 021cb4d..eb5e2e1 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodAccessItem.java
@@ -32,7 +32,7 @@ import io.vertx.ext.web.RoutingContext;
 /**
  * HTTP method
  */
-public class HttpMethodItemAccess implements AccessLogItem<RoutingContext> {
+public class HttpMethodAccessItem implements AccessLogItem<RoutingContext> {
 
   public static final String EMPTY_RESULT = "-";
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusAccessItem.java
similarity index 96%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusAccessItem.java
index 67fe458..3f9e657 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusAccessItem.java
@@ -27,8 +27,8 @@ import org.slf4j.LoggerFactory;
 import io.vertx.core.http.HttpServerResponse;
 import io.vertx.ext.web.RoutingContext;
 
-public class HttpStatusItemAccess implements AccessLogItem<RoutingContext> {
-  private static Logger LOGGER = 
LoggerFactory.getLogger(HttpStatusItemAccess.class);
+public class HttpStatusAccessItem implements AccessLogItem<RoutingContext> {
+  private static Logger LOGGER = 
LoggerFactory.getLogger(HttpStatusAccessItem.class);
 
   public static final String EMPTY_RESULT = "-";
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextAccessItem.java
similarity index 95%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextAccessItem.java
index b96131f..b357bb3 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextAccessItem.java
@@ -28,13 +28,13 @@ import org.springframework.util.StringUtils;
 
 import io.vertx.ext.web.RoutingContext;
 
-public class InvocationContextItemAccess implements 
AccessLogItem<RoutingContext> {
+public class InvocationContextAccessItem implements 
AccessLogItem<RoutingContext> {
 
   public static final String NOT_FOUND = "-";
 
   String varName;
 
-  public InvocationContextItemAccess(String varName) {
+  public InvocationContextAccessItem(String varName) {
     this.varName = varName;
   }
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostAccessItem.java
index 8581e2a..ef070c6 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostAccessItem.java
@@ -28,7 +28,7 @@ import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
-public class LocalHostItemAccess implements AccessLogItem<RoutingContext> {
+public class LocalHostAccessItem implements AccessLogItem<RoutingContext> {
   public static final String EMPTY_RESULT = "-";
 
   @Override
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortAccessItem.java
index 38b7ca8..ffbc983 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortAccessItem.java
@@ -27,7 +27,7 @@ import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
-public class LocalPortItemAccess implements AccessLogItem<RoutingContext> {
+public class LocalPortAccessItem implements AccessLogItem<RoutingContext> {
 
   public static final String EMPTY_RESULT = "-";
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextAccessItem.java
similarity index 93%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextAccessItem.java
index ff8d56b..0f7e130 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextAccessItem.java
@@ -27,10 +27,10 @@ import io.vertx.ext.web.RoutingContext;
 /**
  * Print content as it is.
  */
-public class PlainTextItemAccess implements AccessLogItem<RoutingContext> {
+public class PlainTextAccessItem implements AccessLogItem<RoutingContext> {
   private final String content;
 
-  public PlainTextItemAccess(String content) {
+  public PlainTextAccessItem(String content) {
     this.content = content;
   }
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringAccessItem.java
index 171697a..6ab7eb4 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringAccessItem.java
@@ -27,7 +27,7 @@ import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
-public class QueryStringItemAccess implements AccessLogItem<RoutingContext> {
+public class QueryStringAccessItem implements AccessLogItem<RoutingContext> {
   public static final String EMPTY_RESULT = "-";
 
   @Override
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostAccessItem.java
index 6b21bac..f3b6da6 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostAccessItem.java
@@ -27,7 +27,7 @@ import 
org.apache.servicecomb.foundation.common.net.URIEndpointObject;
 import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
-public class RemoteHostItemAccess implements AccessLogItem<RoutingContext> {
+public class RemoteHostAccessItem implements AccessLogItem<RoutingContext> {
 
   public static final String EMPTY_RESULT = "-";
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderAccessItem.java
similarity index 95%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderAccessItem.java
index fb05527..bb7859e 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderAccessItem.java
@@ -27,12 +27,12 @@ import org.springframework.util.StringUtils;
 import io.vertx.core.MultiMap;
 import io.vertx.ext.web.RoutingContext;
 
-public class RequestHeaderItemAccess implements AccessLogItem<RoutingContext> {
+public class RequestHeaderAccessItem implements AccessLogItem<RoutingContext> {
   public static final String RESULT_NOT_FOUND = "-";
 
   private final String varName;
 
-  public RequestHeaderItemAccess(String varName) {
+  public RequestHeaderAccessItem(String varName) {
     this.varName = varName;
   }
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolAccessItem.java
index 39be17c..0556ffa 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolAccessItem.java
@@ -28,7 +28,7 @@ import io.vertx.core.http.HttpServerRequest;
 import io.vertx.core.http.HttpVersion;
 import io.vertx.ext.web.RoutingContext;
 
-public class RequestProtocolItemAccess implements 
AccessLogItem<RoutingContext> {
+public class RequestProtocolAccessItem implements 
AccessLogItem<RoutingContext> {
   public static final String EMPTY_RESULT = "-";
 
   @Override
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderAccessItem.java
similarity index 95%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderAccessItem.java
index 35f0d6c..5b404f4 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderAccessItem.java
@@ -26,13 +26,13 @@ import org.apache.servicecomb.swagger.invocation.Response;
 import io.vertx.core.http.HttpServerResponse;
 import io.vertx.ext.web.RoutingContext;
 
-public class ResponseHeaderItemAccess implements AccessLogItem<RoutingContext> 
{
+public class ResponseHeaderAccessItem implements AccessLogItem<RoutingContext> 
{
 
   public static final String RESULT_NOT_FOUND = "-";
 
   private final String varName;
 
-  public ResponseHeaderItemAccess(String varName) {
+  public ResponseHeaderAccessItem(String varName) {
     this.varName = varName;
   }
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeAccessItem.java
similarity index 93%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeAccessItem.java
index 8337b74..98845b5 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeAccessItem.java
@@ -24,11 +24,11 @@ import 
org.apache.servicecomb.core.event.ServerAccessLogEvent;
 import io.vertx.core.http.HttpServerResponse;
 import io.vertx.ext.web.RoutingContext;
 
-public class ResponseSizeItemAccess implements AccessLogItem<RoutingContext> {
+public class ResponseSizeAccessItem implements AccessLogItem<RoutingContext> {
   // print zeroBytes when bytes is zero
   private final String zeroBytes;
 
-  public ResponseSizeItemAccess(String zeroBytesPlaceholder) {
+  public ResponseSizeAccessItem(String zeroBytesPlaceholder) {
     zeroBytes = zeroBytesPlaceholder;
   }
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdAccessItem.java
similarity index 90%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdAccessItem.java
index 53a70d0..5940ffc 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdAccessItem.java
@@ -23,11 +23,11 @@ import org.apache.servicecomb.core.Invocation;
 import org.apache.servicecomb.core.event.InvocationFinishEvent;
 import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 
-public class TraceIdItemAccess extends InvocationContextItemAccess {
+public class TraceIdAccessItem extends InvocationContextAccessItem {
 
   public static final String TRACE_ID = Const.TRACE_ID_NAME;
 
-  public TraceIdItemAccess() {
+  public TraceIdAccessItem() {
     super(TRACE_ID);
   }
 
@@ -37,7 +37,7 @@ public class TraceIdItemAccess extends 
InvocationContextItemAccess {
     if (StringUtils.isEmpty(traceId)) {
       traceId = 
accessLogEvent.getRoutingContext().request().getHeader(TRACE_ID);
     }
-    builder.append(StringUtils.isEmpty(traceId) ? 
InvocationContextItemAccess.NOT_FOUND : traceId);
+    builder.append(StringUtils.isEmpty(traceId) ? 
InvocationContextAccessItem.NOT_FOUND : traceId);
   }
 
   @Override
@@ -45,7 +45,7 @@ public class TraceIdItemAccess extends 
InvocationContextItemAccess {
     Invocation invocation = finishEvent.getInvocation();
     if (invocation == null || invocation.getContext() == null
         || StringUtils.isEmpty(invocation.getContext().get(TRACE_ID))) {
-      builder.append(InvocationContextItemAccess.NOT_FOUND);
+      builder.append(InvocationContextAccessItem.NOT_FOUND);
       return;
     }
     builder.append(invocation.getContext().get(TRACE_ID));
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportAccessItem.java
similarity index 96%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportAccessItem.java
index 020f029..4a3f8da 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportAccessItem.java
@@ -26,7 +26,7 @@ import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 
 import io.vertx.ext.web.RoutingContext;
 
-public class TransportItemAccess implements AccessLogItem<RoutingContext> {
+public class TransportAccessItem implements AccessLogItem<RoutingContext> {
   private static final String EMPTY_STR = "-";
 
   /**
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathAccessItem.java
index b9e6a23..ff999da 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathAccessItem.java
@@ -30,7 +30,7 @@ import org.apache.servicecomb.core.event.ServerAccessLogEvent;
 import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
-public class UrlPathItemAccess implements AccessLogItem<RoutingContext> {
+public class UrlPathAccessItem implements AccessLogItem<RoutingContext> {
 
   public static final String EMPTY_RESULT = "-";
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryItemAccess.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryAccessItem.java
similarity index 97%
rename from 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryItemAccess.java
rename to 
common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryAccessItem.java
index 23a11f7..4b1a44b 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryItemAccess.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryAccessItem.java
@@ -28,7 +28,7 @@ import org.springframework.util.StringUtils;
 import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
-public class UrlPathWithQueryItemAccess implements 
AccessLogItem<RoutingContext> {
+public class UrlPathWithQueryAccessItem implements 
AccessLogItem<RoutingContext> {
 
   public static final String EMPTY_RESULT = "-";
 
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/AccessLogItemCreator.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/AccessLogItemCreator.java
index 238d206..9703d58 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/AccessLogItemCreator.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/AccessLogItemCreator.java
@@ -18,7 +18,7 @@
 package org.apache.servicecomb.common.accessLog.core.parser;
 
 import org.apache.servicecomb.common.accessLog.core.element.AccessLogItem;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.CookieItemAccess;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.CookieAccessItem;
 
 /**
  * The {@linkplain AccessLogItemCreator}s are able to instantiate a group of 
{@linkplain AccessLogItem}.
@@ -27,7 +27,7 @@ public interface AccessLogItemCreator<T> {
   /**
    * Create an instance of {@linkplain AccessLogItem} which is specified by 
the config.
    * @param config
-   * e.g. For {@linkplain CookieItemAccess CookieItem},
+   * e.g. For {@linkplain CookieAccessItem CookieItem},
    * the pattern may be "%{varName}C", and it's config is "varName". Some 
{@linkplain AccessLogItem} with no configurable
    * pattern (like "%m") will receive {@code null} as config.
    */
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/DefaultCompositeVertxRestAccessLogItemMeta.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/DefaultCompositeVertxRestAccessLogItemMeta.java
index 8585639..a900c37 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/DefaultCompositeVertxRestAccessLogItemMeta.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/DefaultCompositeVertxRestAccessLogItemMeta.java
@@ -22,26 +22,26 @@ import java.util.List;
 
 
 import org.apache.servicecomb.common.accessLog.core.element.AccessLogItem;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.CookieItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.DatetimeConfigurableItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationMillisecondItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationSecondItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.FirstLineOfRequestItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpMethodItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpStatusItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.InvocationContextItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalHostItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalPortItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.QueryStringItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.RemoteHostItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestHeaderItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestProtocolItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseHeaderItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseSizeItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.TraceIdItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.TransportItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathWithQueryItemAccess;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.CookieAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.ConfigurableDatetimeAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationMillisecondAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationSecondAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.FirstLineOfRequestAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpMethodAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpStatusAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.InvocationContextAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalHostAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalPortAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.QueryStringAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.RemoteHostAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestHeaderAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestProtocolAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseHeaderAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseSizeAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.TraceIdAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.TransportAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathWithQueryAccessItem;
 import 
org.apache.servicecomb.common.accessLog.core.parser.CompositeVertxRestAccessLogItemMeta;
 import 
org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta;
 
@@ -51,36 +51,36 @@ public class DefaultCompositeVertxRestAccessLogItemMeta 
extends CompositeVertxRe
   private static final List<VertxRestAccessLogItemMeta> SUPPORTED_META = new 
ArrayList<>();
 
   static {
-    final AccessLogItem<RoutingContext> httpMethodItem = new 
HttpMethodItemAccess();
+    final AccessLogItem<RoutingContext> httpMethodItem = new 
HttpMethodAccessItem();
     SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%m", config -> 
httpMethodItem));
     SUPPORTED_META.add(new VertxRestAccessLogItemMeta("cs-method", config -> 
httpMethodItem));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%s", config -> new 
HttpStatusItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("sc-status", config -> 
new HttpStatusItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%T", config -> new 
DurationSecondItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%D", config -> new 
DurationMillisecondItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%h", config -> new 
RemoteHostItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%v", config -> new 
LocalHostItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%p", config -> new 
LocalPortItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%B", config -> new 
ResponseSizeItemAccess("0")));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%b", config -> new 
ResponseSizeItemAccess("-")));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%r", config -> new 
FirstLineOfRequestItemAccess()));
-    final AccessLogItem<RoutingContext> urlPathItem = new UrlPathItemAccess();
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%s", config -> new 
HttpStatusAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("sc-status", config -> 
new HttpStatusAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%T", config -> new 
DurationSecondAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%D", config -> new 
DurationMillisecondAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%h", config -> new 
RemoteHostAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%v", config -> new 
LocalHostAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%p", config -> new 
LocalPortAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%B", config -> new 
ResponseSizeAccessItem("0")));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%b", config -> new 
ResponseSizeAccessItem("-")));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%r", config -> new 
FirstLineOfRequestAccessItem()));
+    final AccessLogItem<RoutingContext> urlPathItem = new UrlPathAccessItem();
     SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%U", config -> 
urlPathItem));
     SUPPORTED_META.add(new VertxRestAccessLogItemMeta("cs-uri-stem", config -> 
urlPathItem));
-    final AccessLogItem<RoutingContext> queryStringItem = new 
QueryStringItemAccess();
+    final AccessLogItem<RoutingContext> queryStringItem = new 
QueryStringAccessItem();
     SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%q", config -> 
queryStringItem));
     SUPPORTED_META.add(new VertxRestAccessLogItemMeta("cs-uri-query", config 
-> queryStringItem));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("cs-uri", config -> new 
UrlPathWithQueryItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%H", config -> new 
RequestProtocolItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%t", config -> new 
DatetimeConfigurableItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%SCB-traceId", config 
-> new TraceIdItemAccess()));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%SCB-transport", config 
-> new TransportItemAccess()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("cs-uri", config -> new 
UrlPathWithQueryAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%H", config -> new 
RequestProtocolAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%t", config -> new 
ConfigurableDatetimeAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%SCB-traceId", config 
-> new TraceIdAccessItem()));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%SCB-transport", config 
-> new TransportAccessItem()));
 
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}t", 
DatetimeConfigurableItemAccess::new));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}i", 
RequestHeaderItemAccess::new));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}o", 
ResponseHeaderItemAccess::new));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}C", 
CookieItemAccess::new));
-    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}SCB-ctx", 
InvocationContextItemAccess::new));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}t", 
ConfigurableDatetimeAccessItem::new));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}i", 
RequestHeaderAccessItem::new));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}o", 
ResponseHeaderAccessItem::new));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}C", 
CookieAccessItem::new));
+    SUPPORTED_META.add(new VertxRestAccessLogItemMeta("%{", "}SCB-ctx", 
InvocationContextAccessItem::new));
   }
 
   @Override
diff --git 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParser.java
 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParser.java
index 02d97a9..cd4dca7 100644
--- 
a/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParser.java
+++ 
b/common/common-access-log/src/main/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParser.java
@@ -23,7 +23,7 @@ import java.util.Iterator;
 import java.util.List;
 
 import org.apache.servicecomb.common.accessLog.core.element.AccessLogItem;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.PlainTextItemAccess;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.PlainTextAccessItem;
 import org.apache.servicecomb.common.accessLog.core.parser.AccessLogItemMeta;
 import 
org.apache.servicecomb.common.accessLog.core.parser.AccessLogPatternParser;
 import 
org.apache.servicecomb.common.accessLog.core.parser.CompositeVertxRestAccessLogItemMeta;
@@ -211,10 +211,10 @@ public class VertxRestAccessLogPatternParser implements 
AccessLogPatternParser<R
   /**
    * After processing of {@link #matchAccessLogItem(String)}, all of the 
placeholders of {@link AccessLogItem} have been
    * picked out. So the rest part of rawPattern should be treated as plain 
text. Those parts will be located in this
-   * method and wrapped as {@link PlainTextItemAccess}.
+   * method and wrapped as {@link PlainTextAccessItem}.
    * @param rawPattern raw pattern string of access log
    * @param locationList locations picked out by {@link 
#matchAccessLogItem(String)}
-   * @return all of the locations including {@link PlainTextItemAccess}.
+   * @return all of the locations including {@link PlainTextAccessItem}.
    */
   private List<AccessLogItemLocation> fillInPlainTextLocation(String 
rawPattern,
       List<AccessLogItemLocation> locationList) {
@@ -260,7 +260,7 @@ public class VertxRestAccessLogPatternParser implements 
AccessLogPatternParser<R
       VertxRestAccessLogItemMeta accessLogItemMeta = 
accessLogItemLocation.accessLogItemMeta;
       if (null == accessLogItemMeta) {
         // a PlainTextItem location
-        itemList.add(new PlainTextItemAccess(rawPattern.substring(
+        itemList.add(new PlainTextAccessItem(rawPattern.substring(
             accessLogItemLocation.prefixIndex, accessLogItemLocation.tail
         )));
         continue;
@@ -304,7 +304,7 @@ public class VertxRestAccessLogPatternParser implements 
AccessLogPatternParser<R
     VertxRestAccessLogItemMeta accessLogItemMeta;
 
     /**
-     * for {@link PlainTextItemAccess} only
+     * for {@link PlainTextAccessItem} only
      */
     AccessLogItemLocation(int prefixIndex, int suffixIndex) {
       this.prefixIndex = prefixIndex;
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/AccessLogGeneratorTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/AccessLogGeneratorTest.java
index 52f62a2..ca219df 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/AccessLogGeneratorTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/AccessLogGeneratorTest.java
@@ -24,11 +24,11 @@ import java.text.SimpleDateFormat;
 import java.util.TimeZone;
 
 import org.apache.servicecomb.common.accessLog.core.element.AccessLogItem;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.DatetimeConfigurableItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpMethodItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.PlainTextItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.RemoteHostItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.UserDefinedAccessAccessLogItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.ConfigurableDatetimeAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpMethodAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.PlainTextAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.RemoteHostAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.UserDefinedAccessLogItem;
 import org.apache.servicecomb.core.Invocation;
 import org.apache.servicecomb.core.definition.OperationMeta;
 import org.apache.servicecomb.core.event.InvocationFinishEvent;
@@ -55,9 +55,9 @@ public class AccessLogGeneratorTest {
   public void testConstructor() {
     AccessLogItem<RoutingContext>[] elements = 
Deencapsulation.getField(LOG_GENERATOR, "accessLogItems");
     assertEquals(3, elements.length);
-    assertEquals(HttpMethodItemAccess.class, elements[0].getClass());
-    assertEquals(PlainTextItemAccess.class, elements[1].getClass());
-    assertEquals(DatetimeConfigurableItemAccess.class, elements[2].getClass());
+    assertEquals(HttpMethodAccessItem.class, elements[0].getClass());
+    assertEquals(PlainTextAccessItem.class, elements[1].getClass());
+    assertEquals(ConfigurableDatetimeAccessItem.class, elements[2].getClass());
   }
 
   @Test
@@ -67,8 +67,8 @@ public class AccessLogGeneratorTest {
     long startMillisecond = 1416863450581L;
     ServerAccessLogEvent serverAccessLogEvent = new ServerAccessLogEvent();
     
serverAccessLogEvent.setMilliStartTime(startMillisecond).setRoutingContext(context);
-    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(DatetimeConfigurableItemAccess.DEFAULT_DATETIME_PATTERN,
-        DatetimeConfigurableItemAccess.DEFAULT_LOCALE);
+    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(ConfigurableDatetimeAccessItem.DEFAULT_DATETIME_PATTERN,
+        ConfigurableDatetimeAccessItem.DEFAULT_LOCALE);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
 
     when(context.request()).thenReturn(request);
@@ -92,8 +92,8 @@ public class AccessLogGeneratorTest {
     when(invocation.getInvocationStageTrace()).thenReturn(stageTrace);
 
     InvocationFinishEvent finishEvent = new InvocationFinishEvent(invocation, 
null);
-    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(DatetimeConfigurableItemAccess.DEFAULT_DATETIME_PATTERN,
-        DatetimeConfigurableItemAccess.DEFAULT_LOCALE);
+    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(ConfigurableDatetimeAccessItem.DEFAULT_DATETIME_PATTERN,
+        ConfigurableDatetimeAccessItem.DEFAULT_LOCALE);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
     
when(operationMeta.getHttpMethod()).thenReturn(HttpMethod.DELETE.toString());
     String log = LOG_GENERATOR.generateClientLog(finishEvent);
@@ -104,8 +104,8 @@ public class AccessLogGeneratorTest {
   public void testUserDefinedLogGenerator() {
     AccessLogItem<RoutingContext>[] elements = 
Deencapsulation.getField(USER_DEFINED_LOG_GENERATOR, "accessLogItems");
     assertEquals(3, elements.length);
-    assertEquals(RemoteHostItemAccess.class, elements[0].getClass());
-    assertEquals(PlainTextItemAccess.class, elements[1].getClass());
-    assertEquals(UserDefinedAccessAccessLogItem.class, elements[2].getClass());
+    assertEquals(RemoteHostAccessItem.class, elements[0].getClass());
+    assertEquals(PlainTextAccessItem.class, elements[1].getClass());
+    assertEquals(UserDefinedAccessLogItem.class, elements[2].getClass());
   }
 }
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieItemTest.java
index 9384116..b818ff5 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/CookieItemTest.java
@@ -42,7 +42,7 @@ public class CookieItemTest {
 
   public static final String COOKIE_VALUE = "cookieVALUE";
 
-  private static final CookieItemAccess ELEMENT = new 
CookieItemAccess(COOKIE_NAME);
+  private static final CookieAccessItem ELEMENT = new 
CookieAccessItem(COOKIE_NAME);
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DatetimeConfigurableItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DatetimeConfigurableItemTest.java
index d3b09fb..ef5b06d 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DatetimeConfigurableItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DatetimeConfigurableItemTest.java
@@ -65,7 +65,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void serverFormattedElement() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "EEE, yyyy MMM dd HH:mm:ss zzz|GMT-08|zh-CN");
     element.appendServerFormattedItem(accessLogEvent, strBuilder);
     assertEquals("星期一, 2014 十一月 24 13:10:50 GMT-08:00", strBuilder.toString());
@@ -73,7 +73,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void clientFormattedElement() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "EEE, yyyy MMM dd HH:mm:ss zzz|GMT-08|zh-CN");
     element.appendClientFormattedItem(finishEvent, strBuilder);
     assertEquals("星期一, 2014 十一月 24 13:10:50 GMT-08:00", strBuilder.toString());
@@ -81,7 +81,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void serverFormattedElementOnNoPattern() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "|GMT+08|zh-CN");
 
     element.appendServerFormattedItem(accessLogEvent, strBuilder);
@@ -90,7 +90,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void clientFormattedElementOnNoPattern() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "|GMT+08|zh-CN");
 
     element.appendClientFormattedItem(finishEvent, strBuilder);
@@ -99,7 +99,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void getFormattedElementOnNoTimezone() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "yyyy/MM/dd zzz||zh-CN");
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd zzz", 
Locale.forLanguageTag("zh-CN"));
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
@@ -110,7 +110,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void clientFormattedElementOnNoTimezone() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "yyyy/MM/dd zzz||zh-CN");
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd zzz", 
Locale.forLanguageTag("zh-CN"));
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
@@ -121,7 +121,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void serverFormattedElementOnNoLocale() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "EEE, dd MMM yyyy HH:mm:ss zzz|GMT+08|");
 
     element.appendServerFormattedItem(accessLogEvent, strBuilder);
@@ -130,7 +130,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void clientFormattedElementOnNoLocale() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "EEE, dd MMM yyyy HH:mm:ss zzz|GMT+08|");
 
     element.appendClientFormattedItem(finishEvent, strBuilder);
@@ -139,9 +139,9 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void serverFormattedElementOnNoConfig() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "||");
-    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(DatetimeConfigurableItemAccess.DEFAULT_DATETIME_PATTERN,
+    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(ConfigurableDatetimeAccessItem.DEFAULT_DATETIME_PATTERN,
         Locale.US);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
 
@@ -151,9 +151,9 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void clientFormattedElementOnNoConfig() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess(
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem(
         "||");
-    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(DatetimeConfigurableItemAccess.DEFAULT_DATETIME_PATTERN,
+    SimpleDateFormat simpleDateFormat = new 
SimpleDateFormat(ConfigurableDatetimeAccessItem.DEFAULT_DATETIME_PATTERN,
         Locale.US);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
 
@@ -163,7 +163,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void serverConstructorWithNoArg() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess();
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem();
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy 
HH:mm:ss zzz", Locale.US);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
 
@@ -176,7 +176,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void clientConstructorWithNoArg() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess();
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem();
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("EEE, dd MMM yyyy 
HH:mm:ss zzz", Locale.US);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
 
@@ -189,7 +189,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void serverConstructorWithNoSeparator() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess("yyyy/MM/dd HH:mm:ss zzz");
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem("yyyy/MM/dd HH:mm:ss zzz");
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd 
HH:mm:ss zzz", Locale.US);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
 
@@ -202,7 +202,7 @@ public class DatetimeConfigurableItemTest {
 
   @Test
   public void clientConstructorWithNoSeparator() {
-    DatetimeConfigurableItemAccess element = new 
DatetimeConfigurableItemAccess("yyyy/MM/dd HH:mm:ss zzz");
+    ConfigurableDatetimeAccessItem element = new 
ConfigurableDatetimeAccessItem("yyyy/MM/dd HH:mm:ss zzz");
     SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy/MM/dd 
HH:mm:ss zzz", Locale.US);
     simpleDateFormat.setTimeZone(TimeZone.getDefault());
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondItemTest.java
index 5824bd0..1c4e3c2 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationMillisecondItemTest.java
@@ -30,7 +30,7 @@ import org.mockito.Mockito;
 
 public class DurationMillisecondItemTest {
 
-  public static final DurationMillisecondItemAccess ELEMENT = new 
DurationMillisecondItemAccess();
+  public static final DurationMillisecondAccessItem ELEMENT = new 
DurationMillisecondAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondItemTest.java
index 5e9c59b..37f84bb 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/DurationSecondItemTest.java
@@ -30,7 +30,7 @@ import org.mockito.Mockito;
 
 public class DurationSecondItemTest {
 
-  public static final DurationSecondItemAccess ELEMENT = new 
DurationSecondItemAccess();
+  public static final DurationSecondAccessItem ELEMENT = new 
DurationSecondAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestItemTest.java
index 5c7b599..e4a5a05 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/FirstLineOfRequestItemTest.java
@@ -42,7 +42,7 @@ import io.vertx.ext.web.RoutingContext;
 
 public class FirstLineOfRequestItemTest {
 
-  public static final FirstLineOfRequestItemAccess ELEMENT = new 
FirstLineOfRequestItemAccess();
+  public static final FirstLineOfRequestAccessItem ELEMENT = new 
FirstLineOfRequestAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodItemTest.java
index dc2c828..4e03c33 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpMethodItemTest.java
@@ -40,7 +40,7 @@ import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
 public class HttpMethodItemTest {
-  private static final HttpMethodItemAccess ITEM = new HttpMethodItemAccess();
+  private static final HttpMethodAccessItem ITEM = new HttpMethodAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusItemTest.java
index a5d226f..496c0f4 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/HttpStatusItemTest.java
@@ -32,7 +32,7 @@ import io.vertx.ext.web.RoutingContext;
 
 public class HttpStatusItemTest {
 
-  private static final HttpStatusItemAccess STATUS_ELEMENT = new 
HttpStatusItemAccess();
+  private static final HttpStatusAccessItem STATUS_ELEMENT = new 
HttpStatusAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextItemTest.java
index 54eea30..27b4449 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/InvocationContextItemTest.java
@@ -40,7 +40,7 @@ public class InvocationContextItemTest {
 
   public static final String INVOCATION_CONTEXT_VALUE = "testValue";
 
-  private static InvocationContextItemAccess ITEM = new 
InvocationContextItemAccess(INVOCATION_CONTEXT_KEY);
+  private static InvocationContextAccessItem ITEM = new 
InvocationContextAccessItem(INVOCATION_CONTEXT_KEY);
 
   private StringBuilder strBuilder;
 
@@ -94,7 +94,7 @@ public class InvocationContextItemTest {
     when(invocation.getContext(INVOCATION_CONTEXT_KEY)).thenReturn(null);
 
     ITEM.appendServerFormattedItem(accessLogEvent, strBuilder);
-    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextItemAccess.NOT_FOUND));
+    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextAccessItem.NOT_FOUND));
   }
 
   @Test
@@ -105,7 +105,7 @@ public class InvocationContextItemTest {
     context.put(INVOCATION_CONTEXT_KEY, null);
 
     ITEM.appendClientFormattedItem(finishEvent, strBuilder);
-    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextItemAccess.NOT_FOUND));
+    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextAccessItem.NOT_FOUND));
   }
 
   @Test
@@ -114,7 +114,7 @@ public class InvocationContextItemTest {
     when(routingContext.data()).thenReturn(routingContextData);
 
     ITEM.appendServerFormattedItem(accessLogEvent, strBuilder);
-    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextItemAccess.NOT_FOUND));
+    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextAccessItem.NOT_FOUND));
   }
 
   @Test
@@ -124,14 +124,14 @@ public class InvocationContextItemTest {
     when(invocation.getContext()).thenReturn(context);
 
     ITEM.appendClientFormattedItem(finishEvent, strBuilder);
-    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextItemAccess.NOT_FOUND));
+    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextAccessItem.NOT_FOUND));
   }
 
   @Test
   public void testGetFormattedItemOnRoutingContextDataNotFound() {
     when(routingContext.data()).thenReturn(null);
     ITEM.appendServerFormattedItem(accessLogEvent, strBuilder);
-    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextItemAccess.NOT_FOUND));
+    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextAccessItem.NOT_FOUND));
   }
 
   @Test
@@ -139,13 +139,13 @@ public class InvocationContextItemTest {
     when(finishEvent.getInvocation()).thenReturn(invocation);
     when(invocation.getContext()).thenReturn(null);
     ITEM.appendClientFormattedItem(finishEvent, strBuilder);
-    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextItemAccess.NOT_FOUND));
+    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextAccessItem.NOT_FOUND));
   }
 
   @Test
   public void clientGetFormattedItemOnInvocationNotFound() {
     when(finishEvent.getInvocation()).thenReturn(null);
     ITEM.appendClientFormattedItem(finishEvent, strBuilder);
-    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextItemAccess.NOT_FOUND));
+    Assert.assertThat(strBuilder.toString(), 
Matchers.is(InvocationContextAccessItem.NOT_FOUND));
   }
 }
\ No newline at end of file
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostItemTest.java
index a4005f1..9e780a0 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalHostItemTest.java
@@ -40,7 +40,7 @@ import io.vertx.core.net.SocketAddress;
 import io.vertx.ext.web.RoutingContext;
 
 public class LocalHostItemTest {
-  public static final LocalHostItemAccess ELEMENT = new LocalHostItemAccess();
+  public static final LocalHostAccessItem ELEMENT = new LocalHostAccessItem();
 
   private StringBuilder strBuilder;
 
@@ -107,14 +107,14 @@ public class LocalHostItemTest {
     Mockito.when(serverRequest.localAddress()).thenReturn(socketAddress);
     Mockito.when(socketAddress.host()).thenReturn(localHost);
 
-    String result = LocalHostItemAccess.getLocalAddress(routingContext);
+    String result = LocalHostAccessItem.getLocalAddress(routingContext);
     assertEquals(localHost, result);
   }
 
   @Test
   public void serverLocalAddressOnRequestIsNull() {
     Mockito.when(routingContext.request()).thenReturn(null);
-    String result = LocalHostItemAccess.getLocalAddress(routingContext);
+    String result = LocalHostAccessItem.getLocalAddress(routingContext);
     assertEquals("-", result);
   }
 
@@ -129,7 +129,7 @@ public class LocalHostItemTest {
   public void serverLocalAddressOnLocalAddressIsNull() {
     Mockito.when(routingContext.request()).thenReturn(serverRequest);
     Mockito.when(serverRequest.localAddress()).thenReturn(null);
-    String result = LocalHostItemAccess.getLocalAddress(routingContext);
+    String result = LocalHostAccessItem.getLocalAddress(routingContext);
     assertEquals("-", result);
   }
 
@@ -148,7 +148,7 @@ public class LocalHostItemTest {
     Mockito.when(serverRequest.localAddress()).thenReturn(socketAddress);
     Mockito.when(socketAddress.host()).thenReturn(null);
 
-    String result = LocalHostItemAccess.getLocalAddress(routingContext);
+    String result = LocalHostAccessItem.getLocalAddress(routingContext);
     assertEquals("-", result);
   }
 
@@ -169,7 +169,7 @@ public class LocalHostItemTest {
     Mockito.when(serverRequest.localAddress()).thenReturn(socketAddress);
     Mockito.when(socketAddress.host()).thenReturn(localHost);
 
-    String result = LocalHostItemAccess.getLocalAddress(routingContext);
+    String result = LocalHostAccessItem.getLocalAddress(routingContext);
     assertEquals("-", result);
   }
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortItemTest.java
index b01bc90..81e48fc 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/LocalPortItemTest.java
@@ -39,7 +39,7 @@ import io.vertx.core.net.SocketAddress;
 import io.vertx.ext.web.RoutingContext;
 
 public class LocalPortItemTest {
-  public static final LocalPortItemAccess ELEMENT = new LocalPortItemAccess();
+  public static final LocalPortAccessItem ELEMENT = new LocalPortAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextItemTest.java
index 53b6e4d..305371a 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/PlainTextItemTest.java
@@ -41,14 +41,14 @@ public class PlainTextItemTest {
 
   @Test
   public void serverFormattedElement() {
-    PlainTextItemAccess element = new PlainTextItemAccess("contentTest");
+    PlainTextAccessItem element = new PlainTextAccessItem("contentTest");
     element.appendServerFormattedItem(accessLogEvent, strBuilder);
     assertEquals("contentTest", strBuilder.toString());
   }
 
   @Test
   public void clientFormattedElement() {
-    PlainTextItemAccess element = new PlainTextItemAccess("contentTest");
+    PlainTextAccessItem element = new PlainTextAccessItem("contentTest");
     element.appendClientFormattedItem(finishEvent, strBuilder);
     assertEquals("contentTest", strBuilder.toString());
   }
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringItemTest.java
index c1afa5c..60927f0 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/QueryStringItemTest.java
@@ -37,7 +37,7 @@ import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
 public class QueryStringItemTest {
-  private static final QueryStringItemAccess ITEM = new 
QueryStringItemAccess();
+  private static final QueryStringAccessItem ITEM = new 
QueryStringAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostItemTest.java
index 3c2ee79..f6b442e 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RemoteHostItemTest.java
@@ -34,7 +34,7 @@ import io.vertx.core.net.SocketAddress;
 import io.vertx.ext.web.RoutingContext;
 
 public class RemoteHostItemTest {
-  public static final RemoteHostItemAccess ELEMENT = new 
RemoteHostItemAccess();
+  public static final RemoteHostAccessItem ELEMENT = new 
RemoteHostAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderItemTest.java
index b82ed08..20434b4 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestHeaderItemTest.java
@@ -41,7 +41,7 @@ import io.vertx.ext.web.RoutingContext;
 public class RequestHeaderItemTest {
   private static final String VAR_NAME = "varName";
 
-  private static final RequestHeaderItemAccess ELEMENT = new 
RequestHeaderItemAccess(VAR_NAME);
+  private static final RequestHeaderAccessItem ELEMENT = new 
RequestHeaderAccessItem(VAR_NAME);
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolItemTest.java
index 8083c78..d777883 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/RequestProtocolItemTest.java
@@ -34,7 +34,7 @@ import io.vertx.core.http.HttpVersion;
 import io.vertx.ext.web.RoutingContext;
 
 public class RequestProtocolItemTest {
-  private static final RequestProtocolItemAccess ITEM = new 
RequestProtocolItemAccess();
+  private static final RequestProtocolAccessItem ITEM = new 
RequestProtocolAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderItemTest.java
index f95086e..dc209b6 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseHeaderItemTest.java
@@ -41,7 +41,7 @@ public class ResponseHeaderItemTest {
 
   private static final String VAR_NAME = "varName";
 
-  private static final ResponseHeaderItemAccess ELEMENT = new 
ResponseHeaderItemAccess(VAR_NAME);
+  private static final ResponseHeaderAccessItem ELEMENT = new 
ResponseHeaderAccessItem(VAR_NAME);
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeItemTest.java
index b627b39..55a1b09 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/ResponseSizeItemTest.java
@@ -30,7 +30,7 @@ import io.vertx.core.http.HttpServerResponse;
 import io.vertx.ext.web.RoutingContext;
 
 public class ResponseSizeItemTest {
-  private static final ResponseSizeItemAccess ELEMENT = new 
ResponseSizeItemAccess("0");
+  private static final ResponseSizeAccessItem ELEMENT = new 
ResponseSizeAccessItem("0");
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdItemTest.java
index e6578cf..96cb04a 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TraceIdItemTest.java
@@ -37,7 +37,7 @@ import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
 public class TraceIdItemTest {
-  private static final TraceIdItemAccess ELEMENT = new TraceIdItemAccess();
+  private static final TraceIdAccessItem ELEMENT = new TraceIdAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportItemTest.java
index 21dc041..0f1c980 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/TransportItemTest.java
@@ -29,7 +29,7 @@ import org.junit.Test;
 import org.mockito.Mockito;
 
 public class TransportItemTest {
-  private static final TransportItemAccess ITEM = new TransportItemAccess();
+  private static final TransportAccessItem ITEM = new TransportAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathItemTest.java
index e7121a2..1d5d063 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathItemTest.java
@@ -40,7 +40,7 @@ import io.vertx.core.http.HttpServerRequest;
 import io.vertx.ext.web.RoutingContext;
 
 public class UrlPathItemTest {
-  private static final UrlPathItemAccess ITEM = new UrlPathItemAccess();
+  private static final UrlPathAccessItem ITEM = new UrlPathAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryItemTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryItemTest.java
index e839dc8..a2f01e8 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryItemTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UrlPathWithQueryItemTest.java
@@ -33,7 +33,7 @@ import io.vertx.ext.web.RoutingContext;
 
 public class UrlPathWithQueryItemTest {
 
-  public static final UrlPathWithQueryItemAccess ELEMENT = new 
UrlPathWithQueryItemAccess();
+  public static final UrlPathWithQueryAccessItem ELEMENT = new 
UrlPathWithQueryAccessItem();
 
   private StringBuilder strBuilder;
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessAccessLogItem.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessLogItem.java
similarity index 91%
rename from 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessAccessLogItem.java
rename to 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessLogItem.java
index fc0102b..295f134 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessAccessLogItem.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessLogItem.java
@@ -27,10 +27,10 @@ import io.vertx.ext.web.RoutingContext;
 /**
  * For access log extension test
  */
-public class UserDefinedAccessAccessLogItem implements 
AccessLogItem<RoutingContext> {
+public class UserDefinedAccessLogItem implements AccessLogItem<RoutingContext> 
{
   private String config;
 
-  public UserDefinedAccessAccessLogItem(String config) {
+  public UserDefinedAccessLogItem(String config) {
     this.config = config;
   }
 
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessAccessLogItemLowPriority.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessLogItemLowPriority.java
similarity index 92%
rename from 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessAccessLogItemLowPriority.java
rename to 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessLogItemLowPriority.java
index 2cf864f..a4ed8fd 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessAccessLogItemLowPriority.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/element/impl/UserDefinedAccessLogItemLowPriority.java
@@ -24,10 +24,10 @@ import 
org.apache.servicecomb.core.event.ServerAccessLogEvent;
 import io.vertx.ext.web.RoutingContext;
 
 /**
- * For access log extension test, will be overridden by {@link 
RemoteHostItemAccess}("%h"),
+ * For access log extension test, will be overridden by {@link 
RemoteHostAccessItem}("%h"),
  * and takes no effect.
  */
-public class UserDefinedAccessAccessLogItemLowPriority implements 
AccessLogItem<RoutingContext> {
+public class UserDefinedAccessLogItemLowPriority implements 
AccessLogItem<RoutingContext> {
 
   @Override
   public void appendServerFormattedItem(ServerAccessLogEvent accessLogEvent, 
StringBuilder builder) {
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestCompositeExtendedAccessAccessLogItemMeta.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestCompositeExtendedAccessLogItemMeta.java
similarity index 88%
rename from 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestCompositeExtendedAccessAccessLogItemMeta.java
rename to 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestCompositeExtendedAccessLogItemMeta.java
index e44a5f0..5a39657 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestCompositeExtendedAccessAccessLogItemMeta.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestCompositeExtendedAccessLogItemMeta.java
@@ -20,16 +20,16 @@ package 
org.apache.servicecomb.common.accessLog.core.parser.impl;
 import java.util.ArrayList;
 import java.util.List;
 
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.UserDefinedAccessAccessLogItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.UserDefinedAccessLogItem;
 import 
org.apache.servicecomb.common.accessLog.core.parser.CompositeVertxRestAccessLogItemMeta;
 import 
org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta;
 
 
-public class TestCompositeExtendedAccessAccessLogItemMeta extends 
CompositeVertxRestAccessLogItemMeta {
+public class TestCompositeExtendedAccessLogItemMeta extends 
CompositeVertxRestAccessLogItemMeta {
   private static final List<VertxRestAccessLogItemMeta> META_LIST = new 
ArrayList<>();
 
   static {
-    META_LIST.add(new VertxRestAccessLogItemMeta("%{", "}user-defined", 
UserDefinedAccessAccessLogItem::new));
+    META_LIST.add(new VertxRestAccessLogItemMeta("%{", "}user-defined", 
UserDefinedAccessLogItem::new));
   }
 
   @Override
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestSingleExtendedAccessAccessLogItemMeta.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestSingleExtendedAccessLogItemMeta.java
similarity index 78%
rename from 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestSingleExtendedAccessAccessLogItemMeta.java
rename to 
common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestSingleExtendedAccessLogItemMeta.java
index 84ad0d5..7d88155 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestSingleExtendedAccessAccessLogItemMeta.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/TestSingleExtendedAccessLogItemMeta.java
@@ -18,11 +18,11 @@
 package org.apache.servicecomb.common.accessLog.core.parser.impl;
 
 
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.UserDefinedAccessAccessLogItemLowPriority;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.UserDefinedAccessLogItemLowPriority;
 import 
org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta;
 
-public class TestSingleExtendedAccessAccessLogItemMeta extends 
VertxRestAccessLogItemMeta {
-  public TestSingleExtendedAccessAccessLogItemMeta() {
-    super("%h", null, config -> new 
UserDefinedAccessAccessLogItemLowPriority(), 1);
+public class TestSingleExtendedAccessLogItemMeta extends 
VertxRestAccessLogItemMeta {
+  public TestSingleExtendedAccessLogItemMeta() {
+    super("%h", null, config -> new UserDefinedAccessLogItemLowPriority(), 1);
   }
 }
diff --git 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParserTest.java
 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParserTest.java
index 61d42e9..e7db273 100644
--- 
a/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParserTest.java
+++ 
b/common/common-access-log/src/test/java/org/apache/servicecomb/common/accessLog/core/parser/impl/VertxRestAccessLogPatternParserTest.java
@@ -27,26 +27,26 @@ import java.util.Locale;
 import java.util.TimeZone;
 
 import org.apache.servicecomb.common.accessLog.core.element.AccessLogItem;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.CookieItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.DatetimeConfigurableItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationMillisecondItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationSecondItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.FirstLineOfRequestItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpMethodItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpStatusItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.InvocationContextItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalHostItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalPortItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.QueryStringItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.RemoteHostItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestHeaderItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestProtocolItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseHeaderItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseSizeItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.TraceIdItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.TransportItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathItemAccess;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathWithQueryItemAccess;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.CookieAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.ConfigurableDatetimeAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationMillisecondAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.DurationSecondAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.FirstLineOfRequestAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpMethodAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.HttpStatusAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.InvocationContextAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalHostAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalPortAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.QueryStringAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.RemoteHostAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestHeaderAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.RequestProtocolAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseHeaderAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.ResponseSizeAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.TraceIdAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.TransportAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathAccessItem;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.UrlPathWithQueryAccessItem;
 import 
org.apache.servicecomb.common.accessLog.core.parser.CompositeVertxRestAccessLogItemMeta;
 import 
org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta;
 import org.apache.servicecomb.core.event.ServerAccessLogEvent;
@@ -92,52 +92,52 @@ public class VertxRestAccessLogPatternParserTest {
     StringBuilder builder = new StringBuilder();
     result.get(0).appendServerFormattedItem(accessLogEvent, builder);
     assertEquals("[", builder.toString());
-    assertEquals(HttpMethodItemAccess.class, result.get(1).getClass());
+    assertEquals(HttpMethodAccessItem.class, result.get(1).getClass());
     builder = new StringBuilder();
     result.get(2).appendServerFormattedItem(accessLogEvent, builder);
     assertEquals("] ", builder.toString());
-    assertEquals(HttpMethodItemAccess.class, result.get(3).getClass());
+    assertEquals(HttpMethodAccessItem.class, result.get(3).getClass());
     builder = new StringBuilder();
     result.get(4).appendServerFormattedItem(accessLogEvent, builder);
     assertEquals(" ", builder.toString());
-    assertEquals(HttpStatusItemAccess.class, result.get(5).getClass());
-    assertEquals(DurationSecondItemAccess.class, result.get(6).getClass());
-    assertEquals(DurationMillisecondItemAccess.class, 
result.get(7).getClass());
-    assertEquals(RemoteHostItemAccess.class, result.get(8).getClass());
-    assertEquals(LocalHostItemAccess.class, result.get(9).getClass());
-    assertEquals(LocalPortItemAccess.class, result.get(10).getClass());
-    assertEquals(ResponseSizeItemAccess.class, result.get(11).getClass());
-    assertEquals("0", ((ResponseSizeItemAccess) 
result.get(11)).getZeroBytes());
-    assertEquals(ResponseSizeItemAccess.class, result.get(12).getClass());
-    assertEquals("-", ((ResponseSizeItemAccess) 
result.get(12)).getZeroBytes());
-    assertEquals(FirstLineOfRequestItemAccess.class, 
result.get(13).getClass());
-    assertEquals(UrlPathItemAccess.class, result.get(14).getClass());
-    assertEquals(QueryStringItemAccess.class, result.get(15).getClass());
-    assertEquals(UrlPathItemAccess.class, result.get(16).getClass());
-    assertEquals(QueryStringItemAccess.class, result.get(17).getClass());
-    assertEquals(UrlPathWithQueryItemAccess.class, result.get(18).getClass());
-    assertEquals(RequestProtocolItemAccess.class, result.get(19).getClass());
-    assertEquals(DatetimeConfigurableItemAccess.class, 
result.get(20).getClass());
-    assertEquals(DatetimeConfigurableItemAccess.DEFAULT_DATETIME_PATTERN,
-        ((DatetimeConfigurableItemAccess) result.get(20)).getPattern());
-    assertEquals(DatetimeConfigurableItemAccess.DEFAULT_LOCALE, 
((DatetimeConfigurableItemAccess) result.get(20)).getLocale());
-    assertEquals(TimeZone.getDefault(), ((DatetimeConfigurableItemAccess) 
result.get(20)).getTimezone());
-    assertEquals("yyyy MM dd HH:mm:ss zzz", ((DatetimeConfigurableItemAccess) 
result.get(21)).getPattern());
-    assertEquals(DatetimeConfigurableItemAccess.DEFAULT_LOCALE, 
((DatetimeConfigurableItemAccess) result.get(21)).getLocale());
-    assertEquals(TimeZone.getDefault(), ((DatetimeConfigurableItemAccess) 
result.get(21)).getTimezone());
-    assertEquals("yyyy MM dd HH:mm:ss", ((DatetimeConfigurableItemAccess) 
result.get(22)).getPattern());
-    assertEquals(Locale.forLanguageTag("en-US"), 
((DatetimeConfigurableItemAccess) result.get(22)).getLocale());
-    assertEquals(TimeZone.getTimeZone("GMT+0"), 
((DatetimeConfigurableItemAccess) result.get(22)).getTimezone());
-    assertEquals(RequestHeaderItemAccess.class, result.get(23).getClass());
-    assertEquals("incoming-header", ((RequestHeaderItemAccess) 
result.get(23)).getVarName());
-    assertEquals(ResponseHeaderItemAccess.class, result.get(24).getClass());
-    assertEquals("outgoing-header", ((ResponseHeaderItemAccess) 
result.get(24)).getVarName());
-    assertEquals(CookieItemAccess.class, result.get(25).getClass());
-    assertEquals("cookie", ((CookieItemAccess) result.get(25)).getVarName());
-    assertEquals(TraceIdItemAccess.class, result.get(26).getClass());
-    assertEquals(InvocationContextItemAccess.class, result.get(27).getClass());
-    assertEquals("ctx", ((InvocationContextItemAccess) 
result.get(27)).getVarName());
-    assertEquals(TransportItemAccess.class, result.get(28).getClass());
+    assertEquals(HttpStatusAccessItem.class, result.get(5).getClass());
+    assertEquals(DurationSecondAccessItem.class, result.get(6).getClass());
+    assertEquals(DurationMillisecondAccessItem.class, 
result.get(7).getClass());
+    assertEquals(RemoteHostAccessItem.class, result.get(8).getClass());
+    assertEquals(LocalHostAccessItem.class, result.get(9).getClass());
+    assertEquals(LocalPortAccessItem.class, result.get(10).getClass());
+    assertEquals(ResponseSizeAccessItem.class, result.get(11).getClass());
+    assertEquals("0", ((ResponseSizeAccessItem) 
result.get(11)).getZeroBytes());
+    assertEquals(ResponseSizeAccessItem.class, result.get(12).getClass());
+    assertEquals("-", ((ResponseSizeAccessItem) 
result.get(12)).getZeroBytes());
+    assertEquals(FirstLineOfRequestAccessItem.class, 
result.get(13).getClass());
+    assertEquals(UrlPathAccessItem.class, result.get(14).getClass());
+    assertEquals(QueryStringAccessItem.class, result.get(15).getClass());
+    assertEquals(UrlPathAccessItem.class, result.get(16).getClass());
+    assertEquals(QueryStringAccessItem.class, result.get(17).getClass());
+    assertEquals(UrlPathWithQueryAccessItem.class, result.get(18).getClass());
+    assertEquals(RequestProtocolAccessItem.class, result.get(19).getClass());
+    assertEquals(ConfigurableDatetimeAccessItem.class, 
result.get(20).getClass());
+    assertEquals(ConfigurableDatetimeAccessItem.DEFAULT_DATETIME_PATTERN,
+        ((ConfigurableDatetimeAccessItem) result.get(20)).getPattern());
+    assertEquals(ConfigurableDatetimeAccessItem.DEFAULT_LOCALE, 
((ConfigurableDatetimeAccessItem) result.get(20)).getLocale());
+    assertEquals(TimeZone.getDefault(), ((ConfigurableDatetimeAccessItem) 
result.get(20)).getTimezone());
+    assertEquals("yyyy MM dd HH:mm:ss zzz", ((ConfigurableDatetimeAccessItem) 
result.get(21)).getPattern());
+    assertEquals(ConfigurableDatetimeAccessItem.DEFAULT_LOCALE, 
((ConfigurableDatetimeAccessItem) result.get(21)).getLocale());
+    assertEquals(TimeZone.getDefault(), ((ConfigurableDatetimeAccessItem) 
result.get(21)).getTimezone());
+    assertEquals("yyyy MM dd HH:mm:ss", ((ConfigurableDatetimeAccessItem) 
result.get(22)).getPattern());
+    assertEquals(Locale.forLanguageTag("en-US"), 
((ConfigurableDatetimeAccessItem) result.get(22)).getLocale());
+    assertEquals(TimeZone.getTimeZone("GMT+0"), 
((ConfigurableDatetimeAccessItem) result.get(22)).getTimezone());
+    assertEquals(RequestHeaderAccessItem.class, result.get(23).getClass());
+    assertEquals("incoming-header", ((RequestHeaderAccessItem) 
result.get(23)).getVarName());
+    assertEquals(ResponseHeaderAccessItem.class, result.get(24).getClass());
+    assertEquals("outgoing-header", ((ResponseHeaderAccessItem) 
result.get(24)).getVarName());
+    assertEquals(CookieAccessItem.class, result.get(25).getClass());
+    assertEquals("cookie", ((CookieAccessItem) result.get(25)).getVarName());
+    assertEquals(TraceIdAccessItem.class, result.get(26).getClass());
+    assertEquals(InvocationContextAccessItem.class, result.get(27).getClass());
+    assertEquals("ctx", ((InvocationContextAccessItem) 
result.get(27)).getVarName());
+    assertEquals(TransportAccessItem.class, result.get(28).getClass());
   }
 
   @Test
@@ -148,16 +148,16 @@ public class VertxRestAccessLogPatternParserTest {
     StringBuilder stringBuilder = new StringBuilder();
     result.get(0).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals(" ", stringBuilder.toString());
-    assertEquals(HttpMethodItemAccess.class, result.get(1).getClass());
+    assertEquals(HttpMethodAccessItem.class, result.get(1).getClass());
     stringBuilder = new StringBuilder();
     result.get(2).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals("  ", stringBuilder.toString());
-    assertEquals(UrlPathItemAccess.class, result.get(3).getClass());
+    assertEquals(UrlPathAccessItem.class, result.get(3).getClass());
     stringBuilder = new StringBuilder();
     result.get(4).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals(" ", stringBuilder.toString());
-    assertEquals(ResponseHeaderItemAccess.class, result.get(5).getClass());
-    assertEquals("response-header", ((ResponseHeaderItemAccess) 
result.get(5)).getVarName());
+    assertEquals(ResponseHeaderAccessItem.class, result.get(5).getClass());
+    assertEquals("response-header", ((ResponseHeaderAccessItem) 
result.get(5)).getVarName());
     stringBuilder = new StringBuilder();
     result.get(6).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals(" ", stringBuilder.toString());
@@ -169,10 +169,10 @@ public class VertxRestAccessLogPatternParserTest {
     List<AccessLogItem<RoutingContext>> result = 
logPatternParser.parsePattern(pattern);
     assertEquals(3, result.size());
 
-    assertEquals(HttpMethodItemAccess.class, result.get(0).getClass());
-    assertEquals(UrlPathItemAccess.class, result.get(1).getClass());
-    assertEquals(ResponseHeaderItemAccess.class, result.get(2).getClass());
-    assertEquals("response-header", ((ResponseHeaderItemAccess) 
result.get(2)).getVarName());
+    assertEquals(HttpMethodAccessItem.class, result.get(0).getClass());
+    assertEquals(UrlPathAccessItem.class, result.get(1).getClass());
+    assertEquals(ResponseHeaderAccessItem.class, result.get(2).getClass());
+    assertEquals("response-header", ((ResponseHeaderAccessItem) 
result.get(2)).getVarName());
   }
 
   @Test
@@ -181,30 +181,30 @@ public class VertxRestAccessLogPatternParserTest {
     List<AccessLogItem<RoutingContext>> result = 
logPatternParser.parsePattern(pattern);
     assertEquals(12, result.size());
 
-    assertEquals(HttpMethodItemAccess.class, result.get(0).getClass());
+    assertEquals(HttpMethodAccessItem.class, result.get(0).getClass());
     StringBuilder stringBuilder = new StringBuilder();
     result.get(1).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals("  ", stringBuilder.toString());
-    assertEquals(UrlPathItemAccess.class, result.get(2).getClass());
+    assertEquals(UrlPathAccessItem.class, result.get(2).getClass());
     stringBuilder = new StringBuilder();
     result.get(3).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals(" ", stringBuilder.toString());
-    assertEquals(ResponseHeaderItemAccess.class, result.get(4).getClass());
-    assertEquals("response-header", ((ResponseHeaderItemAccess) 
result.get(4)).getVarName());
+    assertEquals(ResponseHeaderAccessItem.class, result.get(4).getClass());
+    assertEquals("response-header", ((ResponseHeaderAccessItem) 
result.get(4)).getVarName());
     stringBuilder = new StringBuilder();
     result.get(5).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals(" abc ", stringBuilder.toString());
-    assertEquals(QueryStringItemAccess.class, result.get(6).getClass());
+    assertEquals(QueryStringAccessItem.class, result.get(6).getClass());
     stringBuilder = new StringBuilder();
     result.get(7).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals(" ", stringBuilder.toString());
-    assertEquals(HttpStatusItemAccess.class, result.get(8).getClass());
-    assertEquals(RequestHeaderItemAccess.class, result.get(9).getClass());
-    assertEquals("request} header", ((RequestHeaderItemAccess) 
result.get(9)).getVarName());
+    assertEquals(HttpStatusAccessItem.class, result.get(8).getClass());
+    assertEquals(RequestHeaderAccessItem.class, result.get(9).getClass());
+    assertEquals("request} header", ((RequestHeaderAccessItem) 
result.get(9)).getVarName());
     stringBuilder = new StringBuilder();
     result.get(10).appendServerFormattedItem(accessLogEvent, stringBuilder);
     assertEquals(" plain ", stringBuilder.toString());
-    assertEquals(UrlPathWithQueryItemAccess.class, result.get(11).getClass());
+    assertEquals(UrlPathWithQueryAccessItem.class, result.get(11).getClass());
   }
 
   Comparator<VertxRestAccessLogItemMeta> comparator = 
VertxRestAccessLogPatternParser.accessLogItemMetaComparator;
diff --git 
a/common/common-access-log/src/test/resources/META-INF/services/org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta
 
b/common/common-access-log/src/test/resources/META-INF/services/org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta
index 07231a0..501ac43 100644
--- 
a/common/common-access-log/src/test/resources/META-INF/services/org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta
+++ 
b/common/common-access-log/src/test/resources/META-INF/services/org.apache.servicecomb.common.accessLog.core.parser.VertxRestAccessLogItemMeta
@@ -15,5 +15,5 @@
 # limitations under the License.
 #
 
-org.apache.servicecomb.common.accessLog.core.parser.impl.TestCompositeExtendedAccessAccessLogItemMeta
-org.apache.servicecomb.common.accessLog.core.parser.impl.TestSingleExtendedAccessAccessLogItemMeta
\ No newline at end of file
+org.apache.servicecomb.common.accessLog.core.parser.impl.TestCompositeExtendedAccessLogItemMeta
+org.apache.servicecomb.common.accessLog.core.parser.impl.TestSingleExtendedAccessLogItemMeta
\ No newline at end of file
diff --git 
a/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java
 
b/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java
index 5ffe923..5c6f3e1 100644
--- 
a/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java
+++ 
b/transports/transport-rest/transport-rest-vertx/src/main/java/org/apache/servicecomb/transport/rest/vertx/RestServerVerticle.java
@@ -25,7 +25,7 @@ import javax.ws.rs.core.HttpHeaders;
 import javax.ws.rs.core.MediaType;
 
 import org.apache.servicecomb.common.accessLog.AccessLogConfig;
-import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalHostItemAccess;
+import 
org.apache.servicecomb.common.accessLog.core.element.impl.LocalHostAccessItem;
 import org.apache.servicecomb.common.rest.codec.RestObjectMapperFactory;
 import org.apache.servicecomb.core.Endpoint;
 import org.apache.servicecomb.core.event.ServerAccessLogEvent;
@@ -172,7 +172,7 @@ public class RestServerVerticle extends AbstractVerticle {
       ServerAccessLogEvent accessLogEvent = new ServerAccessLogEvent()
           .setRoutingContext(context)
           .setMilliStartTime(System.currentTimeMillis())
-          .setLocalAddress(LocalHostItemAccess.getLocalAddress(context));
+          .setLocalAddress(LocalHostAccessItem.getLocalAddress(context));
       context.response().endHandler(event ->
           
EventManager.post(accessLogEvent.setMilliEndTime(System.currentTimeMillis())));
       context.next();

Reply via email to