Skip to content

Commit 309e459

Browse files
authored
HDDS-10472. Audit log should include EC replication config (#6338)
1 parent 418528a commit 309e459

2 files changed

Lines changed: 20 additions & 4 deletions

File tree

hadoop-hdds/common/src/main/java/org/apache/hadoop/hdds/client/ECReplicationConfig.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,14 @@ public String getReplication() {
154154
+ chunkKB();
155155
}
156156

157+
/** Similar to {@link #getReplication()}, but applies to proto structure, without any validation. */
158+
public static String toString(HddsProtos.ECReplicationConfig proto) {
159+
return proto.getCodec() + EC_REPLICATION_PARAMS_DELIMITER
160+
+ proto.getData() + EC_REPLICATION_PARAMS_DELIMITER
161+
+ proto.getParity() + EC_REPLICATION_PARAMS_DELIMITER
162+
+ proto.getEcChunkSize();
163+
}
164+
157165
public HddsProtos.ECReplicationConfig toProto() {
158166
return HddsProtos.ECReplicationConfig.newBuilder()
159167
.setData(data)

hadoop-ozone/ozone-manager/src/main/java/org/apache/hadoop/ozone/om/request/RequestAuditor.java

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@
2222
import java.util.LinkedHashMap;
2323
import java.util.Map;
2424

25+
import org.apache.hadoop.hdds.client.ECReplicationConfig;
26+
import org.apache.hadoop.hdds.protocol.proto.HddsProtos;
2527
import org.apache.hadoop.ozone.OzoneConsts;
2628
import org.apache.hadoop.ozone.audit.AuditAction;
2729
import org.apache.hadoop.ozone.audit.AuditMessage;
@@ -68,10 +70,16 @@ default Map<String, String> buildKeyArgsAuditMap(KeyArgs keyArgs) {
6870
auditMap.put(OzoneConsts.KEY, keyArgs.getKeyName());
6971
auditMap.put(OzoneConsts.DATA_SIZE,
7072
String.valueOf(keyArgs.getDataSize()));
71-
auditMap.put(OzoneConsts.REPLICATION_TYPE,
72-
(keyArgs.getType() != null) ? keyArgs.getType().name() : null);
73-
auditMap.put(OzoneConsts.REPLICATION_FACTOR,
74-
(keyArgs.getFactor() != null) ? keyArgs.getFactor().name() : null);
73+
if (keyArgs.hasType()) {
74+
auditMap.put(OzoneConsts.REPLICATION_TYPE, keyArgs.getType().name());
75+
}
76+
if (keyArgs.hasFactor() && keyArgs.getFactor() != HddsProtos.ReplicationFactor.ZERO) {
77+
auditMap.put(OzoneConsts.REPLICATION_FACTOR, keyArgs.getFactor().name());
78+
}
79+
if (keyArgs.hasEcReplicationConfig()) {
80+
auditMap.put(OzoneConsts.REPLICATION_CONFIG,
81+
ECReplicationConfig.toString(keyArgs.getEcReplicationConfig()));
82+
}
7583
return auditMap;
7684
}
7785
}

0 commit comments

Comments
 (0)