-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/27802/
-----------------------------------------------------------
(Updated Nov. 13, 2014, 1:01 a.m.)
Review request for Ambari, Alejandro Fernandez, Jonathan Hurley, John Speidel,
Mahadev Konar, Nate Cole, Sid Wagle, and Yusaku Sako.
Changes
-------
Applied most of the changes suggested in the review.
Bugs: AMBARI-4083
https://issues.apache.org/jira/browse/AMBARI-4083
Repository: ambari
Description (updated)
-------
The host component log implements the following two rest api's.
1. To retrieve the log entries.
/clusters/{cluster}/hosts/{hostname}/host_components_logs/{component}
This api will retrieve the logs if available for the host component from
HDFS. It can fetch only maximum of 5120 bytes. The window can be adjusted
using the query parameters 'offset' and 'length'. It also provides simple
filtering using 'level' query parameter.
Sample response will look like below:
{
"href" :
"http://cabir-logs-1:8080/api/v1/clusters/cl1/hosts/cabir-logs-1.c.pramod-thangali.internal/host_components_logs/HBASE_MASTER",
"length" : 5120,
"level" : null,
"offset" : 125952,
"size" : 131072,
"logs" : [
{
"timestamp" : "2014-11-12 20:24:58,508",
"level" : "DEBUG",
"thread" :
"cabir-logs-1.c.pramod-thangali.internal,60000,1415771549794-BalancerChore",
"message" : "balancer.BaseLoadBalancer: Not running balancer because only
1 active regionserver(s)"
},
{
"timestamp" : "2014-11-12 20:29:58,509",
"level" : "DEBUG",
"thread" :
"cabir-logs-1.c.pramod-thangali.internal,60000,1415771549794-BalancerChore",
"message" : "balancer.BaseLoadBalancer: Not running balancer because only
1 active regionserver(s)"
},
{
"timestamp" : "2014-11-12 20:34:58,516",
"level" : "DEBUG",
"thread" :
"cabir-logs-1.c.pramod-thangali.internal,60000,1415771549794-BalancerChore",
"message" : "balancer.BaseLoadBalancer: Not running balancer because only
1 active regionserver(s)"
},
{
"timestamp" : "2014-11-12 20:39:58,509",
"level" : "DEBUG",
"thread" :
"cabir-logs-1.c.pramod-thangali.internal,60000,1415771549794-BalancerChore",
"message" : "balancer.BaseLoadBalancer: Not running balancer because only
1 active regionserver(s)"
}
:
]
}
2. To download the log file from HDFS use the following the api
/clusters/{cluster}/hosts/{hostname}/host_components_logs/{component}?format=file
The response will automatically download the file with the HDFS file name.
Diffs (updated)
-----
ambari-agent/src/main/python/ambari_agent/Controller.py dc3a1cf
ambari-server/pom.xml 4e7477e
ambari-server/src/main/java/org/apache/ambari/server/agent/AgentCommand.java
e2f013d
ambari-server/src/main/java/org/apache/ambari/server/agent/HeartBeatHandler.java
82b642b
ambari-server/src/main/java/org/apache/ambari/server/agent/HeartBeatResponse.java
56b4f18
ambari-server/src/main/java/org/apache/ambari/server/agent/LogConfigCommand.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/agent/RegistrationResponse.java
8a24560
ambari-server/src/main/java/org/apache/ambari/server/api/query/render/BinaryRenderer.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/api/resources/HostComponentLogResourceDefinition.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/api/resources/HostComponentResourceDefinition.java
6dc9e2d
ambari-server/src/main/java/org/apache/ambari/server/api/resources/ResourceInstanceFactoryImpl.java
9ad37ec
ambari-server/src/main/java/org/apache/ambari/server/api/services/AmbariMetaInfo.java
2a137c9
ambari-server/src/main/java/org/apache/ambari/server/api/services/BaseService.java
3afc23d
ambari-server/src/main/java/org/apache/ambari/server/api/services/HostComponentService.java
4990ad7
ambari-server/src/main/java/org/apache/ambari/server/api/services/HostService.java
c51722c
ambari-server/src/main/java/org/apache/ambari/server/api/services/serializers/OctetStreamSerializer.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/configuration/Configuration.java
9970d9a
ambari-server/src/main/java/org/apache/ambari/server/controller/ControllerModule.java
d74510a
ambari-server/src/main/java/org/apache/ambari/server/controller/HostComponentLogResponse.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/AbstractControllerResourceProvider.java
ae20f56
ambari-server/src/main/java/org/apache/ambari/server/controller/internal/HostComponentLogResourceProvider.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/controller/spi/Resource.java
dbac906
ambari-server/src/main/java/org/apache/ambari/server/state/LogConfig.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/state/LogConfigHandler.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/state/LogDefinition.java
PRE-CREATION
ambari-server/src/main/java/org/apache/ambari/server/state/LogEntry.java
PRE-CREATION
ambari-server/src/main/resources/key_properties.json c1a6636
ambari-server/src/main/resources/log_handler_config.json PRE-CREATION
ambari-server/src/test/java/org/apache/ambari/server/api/services/AmbariMetaInfoTest.java
6ab35c2
ambari-server/src/test/java/org/apache/ambari/server/controller/internal/HostComponentLogResourceProviderTest.java
PRE-CREATION
Diff: https://reviews.apache.org/r/27802/diff/
Testing
-------
1. Ran the unit tests.
2. Manually ran the retrieve host component logs without any query parameters.
3. Manually ran the retrieve host component logs with offset and length.
4. Manually ran the retrieve host component logs with level filter.
5. Manually ran the retrieve host component logs with webHDFS disabled.
6. Manually ran the download host component log file with webHDFS enabled.
7. Manually ran the download host component log file with webHDFS disabled.
Thanks,
Cabir Zounaidou