This is an automated email from the ASF dual-hosted git repository.
wuzhiguo pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/trunk by this push:
new 5fc20b85f7 AMBARI-25124: ambari-audit.log entries span multiple lines
(#3396)
5fc20b85f7 is described below
commit 5fc20b85f72097ab30b04f39d482e85a8cf26534
Author: Zhiguo Wu <[email protected]>
AuthorDate: Sun Oct 16 16:15:05 2022 +0800
AMBARI-25124: ambari-audit.log entries span multiple lines (#3396)
---
.../ambari/server/audit/event/LoginAuditEvent.java | 7 +++----
.../AddRepositoryVersionRequestAuditEvent.java | 9 +++------
.../ChangeRepositoryVersionRequestAuditEvent.java | 10 ++++------
.../ClusterPrivilegeChangeRequestAuditEvent.java | 18 ++++++++++--------
.../ViewPrivilegeChangeRequestAuditEvent.java | 16 ++++++++--------
.../ambari/server/audit/LoginAuditEventTest.java | 12 ++++++------
.../request/creator/PrivilegeEventCreatorTest.java | 12 ++++++------
.../creator/RepositoryVersionEventCreatorTest.java | 20 ++++++++++----------
.../creator/ViewPrivilegeEventCreatorTest.java | 12 ++++++------
9 files changed, 56 insertions(+), 60 deletions(-)
diff --git
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/LoginAuditEvent.java
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/LoginAuditEvent.java
index 9be216ad3b..f9523c10ad 100644
---
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/LoginAuditEvent.java
+++
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/LoginAuditEvent.java
@@ -62,15 +62,14 @@ public class LoginAuditEvent extends AbstractUserAuditEvent
{
protected void buildAuditMessage(StringBuilder builder) {
super.buildAuditMessage(builder);
- builder.append(", Operation(User login),
Roles(").append(System.lineSeparator());
+ builder.append(", Operation(User login), Roles(");
if (roles != null && !roles.isEmpty()) {
List<String> lines = new LinkedList<>();
for (Map.Entry<String, List<String>> entry : roles.entrySet()) {
- lines.add(" " + entry.getKey() + ": " +
StringUtils.join(entry.getValue(), ", "));
+ lines.add(entry.getKey() + ": " + StringUtils.join(entry.getValue(),
", "));
}
- builder.append(StringUtils.join(lines, System.lineSeparator()));
- builder.append(System.lineSeparator());
+ builder.append(StringUtils.join(lines, ","));
}
builder.append("), Status(")
.append(reasonOfFailure == null ? "Success" : "Failed");
diff --git
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/AddRepositoryVersionRequestAuditEvent.java
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/AddRepositoryVersionRequestAuditEvent.java
index 82207d21c7..fb85ddc097 100644
---
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/AddRepositoryVersionRequestAuditEvent.java
+++
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/AddRepositoryVersionRequestAuditEvent.java
@@ -88,18 +88,15 @@ public class AddRepositoryVersionRequestAuditEvent extends
RequestAuditEvent {
.append(repoVersion)
.append("), Repositories(");
- if (!repos.isEmpty()) {
- builder.append(System.lineSeparator());
- }
for (Map.Entry<String, List<Map<String, String>>> repo :
repos.entrySet()) {
builder.append("Operating system: ").append(repo.getKey());
- builder.append(System.lineSeparator());
+ builder.append("(");
for (Map<String, String> properties : repo.getValue()) {
- builder.append(" Repository
ID(").append(properties.get("repo_id"));
+ builder.append("Repository ID(").append(properties.get("repo_id"));
builder.append("), Repository
name(").append(properties.get("repo_name"));
builder.append("), Base
url(").append(properties.get("base_url")).append(")");
- builder.append(System.lineSeparator());
+ builder.append(")");
}
}
diff --git
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ChangeRepositoryVersionRequestAuditEvent.java
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ChangeRepositoryVersionRequestAuditEvent.java
index fdba4eb013..83e36140b5 100644
---
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ChangeRepositoryVersionRequestAuditEvent.java
+++
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ChangeRepositoryVersionRequestAuditEvent.java
@@ -89,18 +89,16 @@ public class ChangeRepositoryVersionRequestAuditEvent
extends RequestAuditEvent
.append(repoVersion)
.append("), Repositories(");
- if (!repos.isEmpty()) {
- builder.append(System.lineSeparator());
- }
+
for (Map.Entry<String, List<Map<String, String>>> repo :
repos.entrySet()) {
builder.append("Operating system: ").append(repo.getKey());
- builder.append(System.lineSeparator());
+ builder.append("(");
for (Map<String, String> properties : repo.getValue()) {
- builder.append(" Repository
ID(").append(properties.get("repo_id"));
+ builder.append("Repository ID(").append(properties.get("repo_id"));
builder.append("), Repository
name(").append(properties.get("repo_name"));
builder.append("), Base
url(").append(properties.get("base_url")).append(")");
- builder.append(System.lineSeparator());
+ builder.append(")");
}
}
diff --git
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ClusterPrivilegeChangeRequestAuditEvent.java
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ClusterPrivilegeChangeRequestAuditEvent.java
index 5b2ceca8bb..a49215fef8 100644
---
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ClusterPrivilegeChangeRequestAuditEvent.java
+++
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ClusterPrivilegeChangeRequestAuditEvent.java
@@ -80,28 +80,30 @@ public class ClusterPrivilegeChangeRequestAuditEvent
extends RequestAuditEvent {
roleSet.addAll(roles.keySet());
builder.append(", Roles(");
- if (!users.isEmpty() || !groups.isEmpty()|| !roles.isEmpty()) {
- builder.append(System.lineSeparator());
- }
+
List<String> lines = new LinkedList<>();
for (String role : roleSet) {
- lines.add(role + ": ");
+ List<String> tmpLines = new LinkedList<>();
+ lines.add(role + ": [");
if (users.get(role) != null && !users.get(role).isEmpty()) {
- lines.add(" Users: " + StringUtils.join(users.get(role), ", "));
+ tmpLines.add("Users: " + StringUtils.join(users.get(role), ", "));
}
if (groups.get(role) != null && !groups.get(role).isEmpty()) {
- lines.add(" Groups: " + StringUtils.join(groups.get(role), ", "));
+ tmpLines.add("Groups: " + StringUtils.join(groups.get(role), ", "));
}
if (roles.get(role) != null && !roles.get(role).isEmpty()) {
- lines.add(" Roles: " + StringUtils.join(roles.get(role), ", "));
+ tmpLines.add("Roles: " + StringUtils.join(roles.get(role), ", "));
}
+ lines.add(StringUtils.join(tmpLines, ";"));
+ lines.add("] ");
}
- builder.append(StringUtils.join(lines, System.lineSeparator()));
+ builder.append(StringUtils.join(lines, ""));
builder.append(")");
+
}
public ClusterPrivilegeChangeRequestAuditEventBuilder
withUsers(Map<String, List<String>> users) {
diff --git
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ViewPrivilegeChangeRequestAuditEvent.java
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ViewPrivilegeChangeRequestAuditEvent.java
index 2fdb3ef436..7aaf928864 100644
---
a/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ViewPrivilegeChangeRequestAuditEvent.java
+++
b/ambari-server/src/main/java/org/apache/ambari/server/audit/event/request/ViewPrivilegeChangeRequestAuditEvent.java
@@ -101,26 +101,26 @@ public class ViewPrivilegeChangeRequestAuditEvent extends
RequestAuditEvent {
roleSet.addAll(roles.keySet());
builder.append(", Permissions(");
- if (!users.isEmpty() || !groups.isEmpty() || !roles.isEmpty()) {
- builder.append(System.lineSeparator());
- }
List<String> lines = new LinkedList<>();
for (String role : roleSet) {
- lines.add(role + ": ");
+ List<String> tmpLines = new LinkedList<>();
+ lines.add(role + ": [");
if (users.get(role) != null && !users.get(role).isEmpty()) {
- lines.add(" Users: " + StringUtils.join(users.get(role), ", "));
+ tmpLines.add("Users: " + StringUtils.join(users.get(role), ", "));
}
if (groups.get(role) != null && !groups.get(role).isEmpty()) {
- lines.add(" Groups: " + StringUtils.join(groups.get(role), ", "));
+ tmpLines.add("Groups: " + StringUtils.join(groups.get(role), ", "));
}
if (roles.get(role) != null && !roles.get(role).isEmpty()) {
- lines.add(" Roles: " + StringUtils.join(roles.get(role), ", "));
+ tmpLines.add("Roles: " + StringUtils.join(roles.get(role), ", "));
}
+ lines.add(StringUtils.join(tmpLines, ";"));
+ lines.add("] ");
}
- builder.append(StringUtils.join(lines, System.lineSeparator()));
+ builder.append(StringUtils.join(lines, ""));
builder.append(")");
}
diff --git
a/ambari-server/src/test/java/org/apache/ambari/server/audit/LoginAuditEventTest.java
b/ambari-server/src/test/java/org/apache/ambari/server/audit/LoginAuditEventTest.java
index b2ab7cc0cd..39b96ae224 100644
---
a/ambari-server/src/test/java/org/apache/ambari/server/audit/LoginAuditEventTest.java
+++
b/ambari-server/src/test/java/org/apache/ambari/server/audit/LoginAuditEventTest.java
@@ -55,7 +55,7 @@ public class LoginAuditEventTest {
// When
String actualAuditMessage = evnt.getAuditMessage();
- String roleMessage = System.lineSeparator() + " a: r1, r2, r3" +
System.lineSeparator();
+ String roleMessage = "a: r1, r2, r3";
// Then
String expectedAuditMessage = String.format("User(%s), RemoteIp(%s),
Operation(User login), Roles(%s), Status(Success)",
@@ -74,7 +74,7 @@ public class LoginAuditEventTest {
// When
actualAuditMessage = evnt.getAuditMessage();
- roleMessage = System.lineSeparator() + " a: r1, r2, r3" +
System.lineSeparator();
+ roleMessage = "a: r1, r2, r3";
// Then
expectedAuditMessage = String.format("User(%s), RemoteIp(%s),
ProxyUser(%s), Operation(User login), Roles(%s), Status(Success)",
@@ -109,7 +109,7 @@ public class LoginAuditEventTest {
// When
String actualAuditMessage = evnt.getAuditMessage();
- String roleMessage = System.lineSeparator() + " a: r1, r2, r3" +
System.lineSeparator();
+ String roleMessage = "a: r1, r2, r3" ;
// Then
String expectedAuditMessage = String.format("User(%s), RemoteIp(%s),
Operation(User login), Roles(%s), Status(Failed), Reason(%s), Consecutive
failures(%d)",
@@ -130,7 +130,7 @@ public class LoginAuditEventTest {
// When
actualAuditMessage = evnt.getAuditMessage();
- roleMessage = System.lineSeparator() + " a: r1, r2, r3" +
System.lineSeparator();
+ roleMessage = "a: r1, r2, r3" ;
// Then
expectedAuditMessage = String.format("User(%s), RemoteIp(%s),
ProxyUser(%s), Operation(User login), Roles(%s), Status(Failed), Reason(%s),
Consecutive failures(%d)",
@@ -164,7 +164,7 @@ public class LoginAuditEventTest {
// When
String actualAuditMessage = evnt.getAuditMessage();
- String roleMessage = System.lineSeparator() + " a: r1, r2, r3" +
System.lineSeparator();
+ String roleMessage = "a: r1, r2, r3" ;
// Then
String expectedAuditMessage = String.format("User(%s), RemoteIp(%s),
Operation(User login), Roles(%s), Status(Failed), Reason(%s), Consecutive
failures(UNKNOWN USER)",
@@ -185,7 +185,7 @@ public class LoginAuditEventTest {
// When
actualAuditMessage = evnt.getAuditMessage();
- roleMessage = System.lineSeparator() + " a: r1, r2, r3" +
System.lineSeparator();
+ roleMessage = "a: r1, r2, r3";
// Then
expectedAuditMessage = String.format("User(%s), RemoteIp(%s),
ProxyUser(%s), Operation(User login), Roles(%s), Status(Failed), Reason(%s),
Consecutive failures(UNKNOWN USER)",
diff --git
a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/PrivilegeEventCreatorTest.java
b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/PrivilegeEventCreatorTest.java
index 84d6dc9772..41c291a92b 100644
---
a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/PrivilegeEventCreatorTest.java
+++
b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/PrivilegeEventCreatorTest.java
@@ -96,12 +96,12 @@ public class PrivilegeEventCreatorTest extends
AuditEventCreatorTestBase{
AuditEvent event = AuditEventCreatorTestHelper.getEvent(creator, request,
result);
String actual = event.getAuditMessage();
- String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(Role change), RequestType(PUT),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK), Roles(\n" +
- "Permission1: \n" +
- " Users: " + userName + "\n" +
- " Groups: testgroup\n" +
- "Permission2: \n" +
- " Users: " + userName + "2)";
+ String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(Role change), RequestType(PUT),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK), Roles(" +
+ "Permission1: [" +
+ "Users: " + userName + ";" +
+ "Groups: testgroup]" +
+ " Permission2: [" +
+ "Users: " + userName + "2] )";
Assert.assertTrue("Class mismatch", event instanceof
ClusterPrivilegeChangeRequestAuditEvent);
Assert.assertEquals(expected, actual);
diff --git
a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/RepositoryVersionEventCreatorTest.java
b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/RepositoryVersionEventCreatorTest.java
index e4d1d4711c..38c88b5979 100644
---
a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/RepositoryVersionEventCreatorTest.java
+++
b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/RepositoryVersionEventCreatorTest.java
@@ -59,11 +59,11 @@ public class RepositoryVersionEventCreatorTest extends
AuditEventCreatorTestBase
AuditEvent event = AuditEventCreatorTestHelper.getEvent(creator, request,
result);
String actual = event.getAuditMessage();
- String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(Repository version addition), RequestType(POST),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK),
Stack(StackName), Stack version(1.9), Display name(MyStack), Repo
version(1.2-56), Repositories(\n" +
- "Operating system: redhat6\n" +
- " Repository ID(2), Repository name(MyRepo6), Base
url(http://example6.com)\n" +
- "Operating system: redhat7\n" +
- " Repository ID(1), Repository name(MyRepo), Base
url(http://example.com)\n" +
+ String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(Repository version addition), RequestType(POST),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK),
Stack(StackName), Stack version(1.9), Display name(MyStack), Repo
version(1.2-56), Repositories(" +
+ "Operating system: redhat6(" +
+ "Repository ID(2), Repository name(MyRepo6), Base
url(http://example6.com))" +
+ "Operating system: redhat7(" +
+ "Repository ID(1), Repository name(MyRepo), Base
url(http://example.com))" +
")";
Assert.assertTrue("Class mismatch", event instanceof
AddRepositoryVersionRequestAuditEvent);
@@ -89,11 +89,11 @@ public class RepositoryVersionEventCreatorTest extends
AuditEventCreatorTestBase
AuditEvent event = AuditEventCreatorTestHelper.getEvent(creator, request,
result);
String actual = event.getAuditMessage();
- String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(Repository version change), RequestType(PUT),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK),
Stack(StackName), Stack version(1.9), Display name(MyStack), Repo
version(1.2-56), Repositories(\n" +
- "Operating system: redhat6\n" +
- " Repository ID(2), Repository name(MyRepo6), Base
url(http://example6.com)\n" +
- "Operating system: redhat7\n" +
- " Repository ID(1), Repository name(MyRepo), Base
url(http://example.com)\n" +
+ String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(Repository version change), RequestType(PUT),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK),
Stack(StackName), Stack version(1.9), Display name(MyStack), Repo
version(1.2-56), Repositories(" +
+ "Operating system: redhat6(" +
+ "Repository ID(2), Repository name(MyRepo6), Base
url(http://example6.com))" +
+ "Operating system: redhat7(" +
+ "Repository ID(1), Repository name(MyRepo), Base
url(http://example.com))" +
")";
Assert.assertTrue("Class mismatch", event instanceof
ChangeRepositoryVersionRequestAuditEvent);
diff --git
a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/ViewPrivilegeEventCreatorTest.java
b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/ViewPrivilegeEventCreatorTest.java
index 121513931f..a2cf86fa2b 100644
---
a/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/ViewPrivilegeEventCreatorTest.java
+++
b/ambari-server/src/test/java/org/apache/ambari/server/audit/request/creator/ViewPrivilegeEventCreatorTest.java
@@ -74,12 +74,12 @@ public class ViewPrivilegeEventCreatorTest extends
AuditEventCreatorTestBase{
AuditEvent event = AuditEventCreatorTestHelper.getEvent(creator, request,
result);
String actual = event.getAuditMessage();
- String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(View permission change), RequestType(PUT),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK), Type(MyView),
Version(MyView), Name(MyView), Permissions(\n" +
- "Permission1: \n" +
- " Users: testuser\n" +
- " Groups: testgroup\n" +
- "Permission2: \n" +
- " Users: testuser2)";
+ String expected = "User(" + userName + "), RemoteIp(1.2.3.4),
Operation(View permission change), RequestType(PUT),
url(http://example.com:8080/api/v1/test), ResultStatus(200 OK), Type(MyView),
Version(MyView), Name(MyView), Permissions(" +
+ "Permission1: [" +
+ "Users: testuser;" +
+ "Groups: testgroup]" +
+ " Permission2: [" +
+ "Users: testuser2] )";
Assert.assertTrue("Class mismatch", event instanceof
ViewPrivilegeChangeRequestAuditEvent);
Assert.assertEquals(expected, actual);
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]