@Override public String formatAuditLogItem(ModelControllerAuditLogItem item) { String formattedString = getCachedString(); if (formattedString != null) { return formattedString; } ModelNode formatted = new ModelNode(); formatted.get(TYPE).set(TYPE_CORE); addCommonFields(item, formatted); formatted.get(SUCCESS).set(item.getResultAction() == ResultAction.KEEP); formatted.get(OPERATIONS).set(item.getOperations()); return cacheString(createRecordText(item, formatted)); }
private void updateFormatter(ModelNode operation, String attributeName, ModelNode value) { JsonAuditLogItemFormatter formatter = auditLogger.getJsonFormatter(Util.getNameFromAddress(operation.require(OP_ADDR))); if (attributeName.equals(INCLUDE_DATE.getName())){ formatter.setIncludeDate(value.asBoolean()); } else if (attributeName.equals(DATE_FORMAT.getName())){ formatter.setDateFormat(value.asString()); } else if (attributeName.equals(DATE_SEPARATOR.getName())){ formatter.setDateSeparator(value.asString()); } else if (attributeName.equals(COMPACT.getName())){ formatter.setCompactJson(value.asBoolean()); } else if (attributeName.equals(ESCAPE_NEW_LINE.getName())) { formatter.setEscapeNewLine(value.asBoolean()); } else if (attributeName.equals(ESCAPE_CONTROL_CHARACTERS.getName())) { formatter.setEscapeControlCharacters(value.asBoolean()); } } }
private String createRecordText(AuditLogItem item, ModelNode formatted) { StringBuilder sb = new StringBuilder(); appendDate(sb, item); sb.append(formatted.toJSONString(compactJson)); String formattedString; if (escapeNewLine && !escapeControlCharacters) { //Escape all instances of "\n" with "#012" formattedString = sb.toString().replace("\n", "#012"); } else if (escapeControlCharacters) { StringBuilder escaped = new StringBuilder(); for (int i = 0 ; i < sb.length() ; i++) { char c = sb.charAt(i); if (c >= 0 && c < 32) { escaped.append('#'); if (c < 8) { escaped.append('0').append('0').append((int) c); } else { escaped.append('0').append(c >> 3).append(c & 0x07); } } else { escaped.append(c); } } formattedString = escaped.toString(); } else { formattedString = sb.toString(); } return formattedString; }
private static JsonAuditLogItemFormatter createFormatter(OperationContext context, ModelNode operation, ModelNode model) throws OperationFailedException { return new JsonAuditLogItemFormatter( Util.getNameFromAddress(operation.require(OP_ADDR)), INCLUDE_DATE.resolveModelAttribute(context, model).asBoolean(), DATE_SEPARATOR.resolveModelAttribute(context, model).asString(), DATE_FORMAT.resolveModelAttribute(context, model).asString(), COMPACT.resolveModelAttribute(context, model).asBoolean(), ESCAPE_NEW_LINE.resolveModelAttribute(context, model).asBoolean(), ESCAPE_CONTROL_CHARACTERS.resolveModelAttribute(context, model).asBoolean()); }
private void updateFormatter(ModelNode operation, String attributeName, ModelNode value) { JsonAuditLogItemFormatter formatter = auditLogger.getJsonFormatter(Util.getNameFromAddress(operation.require(OP_ADDR))); if (attributeName.equals(INCLUDE_DATE.getName())){ formatter.setIncludeDate(value.asBoolean()); } else if (attributeName.equals(DATE_FORMAT.getName())){ formatter.setDateFormat(value.asString()); } else if (attributeName.equals(DATE_SEPARATOR.getName())){ formatter.setDateSeparator(value.asString()); } else if (attributeName.equals(COMPACT.getName())){ formatter.setCompactJson(value.asBoolean()); } else if (attributeName.equals(ESCAPE_NEW_LINE.getName())) { formatter.setEscapeNewLine(value.asBoolean()); } else if (attributeName.equals(ESCAPE_CONTROL_CHARACTERS.getName())) { formatter.setEscapeControlCharacters(value.asBoolean()); } } }
private String createRecordText(AuditLogItem item, ModelNode formatted) { StringBuilder sb = new StringBuilder(); appendDate(sb, item); sb.append(formatted.toJSONString(compactJson)); String formattedString; if (escapeNewLine && !escapeControlCharacters) { //Escape all instances of "\n" with "#012" formattedString = sb.toString().replace("\n", "#012"); } else if (escapeControlCharacters) { StringBuilder escaped = new StringBuilder(); for (int i = 0 ; i < sb.length() ; i++) { char c = sb.charAt(i); if (c >= 0 && c < 32) { escaped.append('#'); if (c < 8) { escaped.append('0').append('0').append((int) c); } else { escaped.append('0').append(c >> 3).append(c & 0x07); } } else { escaped.append(c); } } formattedString = escaped.toString(); } else { formattedString = sb.toString(); } return formattedString; }
private static JsonAuditLogItemFormatter createFormatter(OperationContext context, ModelNode operation, ModelNode model) throws OperationFailedException { return new JsonAuditLogItemFormatter( Util.getNameFromAddress(operation.require(OP_ADDR)), INCLUDE_DATE.resolveModelAttribute(context, model).asBoolean(), DATE_SEPARATOR.resolveModelAttribute(context, model).asString(), DATE_FORMAT.resolveModelAttribute(context, model).asString(), COMPACT.resolveModelAttribute(context, model).asBoolean(), ESCAPE_NEW_LINE.resolveModelAttribute(context, model).asBoolean(), ESCAPE_CONTROL_CHARACTERS.resolveModelAttribute(context, model).asBoolean()); }
@Override public String formatAuditLogItem(ModelControllerAuditLogItem item) { String formattedString = getCachedString(); if (formattedString != null) { return formattedString; } ModelNode formatted = new ModelNode(); formatted.get(TYPE).set(TYPE_CORE); addCommonFields(item, formatted); formatted.get(SUCCESS).set(item.getResultAction() == ResultAction.KEEP); formatted.get(OPERATIONS).set(item.getOperations()); return cacheString(createRecordText(item, formatted)); }
private String createRecordText(AuditLogItem item, ModelNode formatted) { StringBuilder sb = new StringBuilder(); appendDate(sb, item); sb.append(formatted.toJSONString(compactJson)); String formattedString; if (escapeNewLine && !escapeControlCharacters) { //Escape all instances of "\n" with "#012" formattedString = sb.toString().replace("\n", "#012"); } else if (escapeControlCharacters) { StringBuilder escaped = new StringBuilder(); for (int i = 0 ; i < sb.length() ; i++) { char c = sb.charAt(i); if (c >= 0 && c < 32) { escaped.append('#'); if (c < 8) { escaped.append('0').append('0').append((int) c); } else { escaped.append('0').append(c >> 3).append(c & 0x07); } } else { escaped.append(c); } } formattedString = escaped.toString(); } else { formattedString = sb.toString(); } return formattedString; }
@Override public String formatAuditLogItem(ModelControllerAuditLogItem item) { String formattedString = getCachedString(); if (formattedString != null) { return formattedString; } ModelNode formatted = new ModelNode(); formatted.get(TYPE).set(TYPE_CORE); addCommonFields(item, formatted); formatted.get(SUCCESS).set(item.getResultAction() == ResultAction.KEEP); formatted.get(OPERATIONS).set(item.getOperations()); return cacheString(createRecordText(item, formatted)); }
@Override public String formatAuditLogItem(JmxAccessAuditLogItem item) { String formattedString = getCachedString(); if (formattedString != null) { return formattedString; } ModelNode formatted = new ModelNode(); formatted.get(TYPE).set(TYPE_JMX); addCommonFields(item, formatted); formatted.get(METHOD_NAME).set(item.getMethodName()); formatted.get(METHOD_SIGNATURE); for (String sig : item.getMethodSignature()) { formatted.get(METHOD_SIGNATURE).add(sig); } formatted.get(METHOD_PARAMETERS); for (Object param : item.getMethodParams()) { //TODO handle arrays better formatted.get(METHOD_PARAMETERS).add(param == null ? UNDEFINED : new ModelNode(param.toString())); } final Throwable throwable = item.getError(); if (throwable != null) { //TODO include stack trace? formatted.get(ERROR).set(throwable.getMessage()); } return cacheString(createRecordText(item, formatted)); }
@Override public String formatAuditLogItem(JmxAccessAuditLogItem item) { String formattedString = getCachedString(); if (formattedString != null) { return formattedString; } ModelNode formatted = new ModelNode(); formatted.get(TYPE).set(TYPE_JMX); addCommonFields(item, formatted); formatted.get(METHOD_NAME).set(item.getMethodName()); formatted.get(METHOD_SIGNATURE); for (String sig : item.getMethodSignature()) { formatted.get(METHOD_SIGNATURE).add(sig); } formatted.get(METHOD_PARAMETERS); for (Object param : item.getMethodParams()) { //TODO handle arrays better formatted.get(METHOD_PARAMETERS).add(param == null ? UNDEFINED : new ModelNode(param.toString())); } final Throwable throwable = item.getError(); if (throwable != null) { //TODO include stack trace? formatted.get(ERROR).set(throwable.getMessage()); } return cacheString(createRecordText(item, formatted)); }
@Override public String formatAuditLogItem(JmxAccessAuditLogItem item) { String formattedString = getCachedString(); if (formattedString != null) { return formattedString; } ModelNode formatted = new ModelNode(); formatted.get(TYPE).set(TYPE_JMX); addCommonFields(item, formatted); formatted.get(METHOD_NAME).set(item.getMethodName()); formatted.get(METHOD_SIGNATURE); for (String sig : item.getMethodSignature()) { formatted.get(METHOD_SIGNATURE).add(sig); } formatted.get(METHOD_PARAMETERS); for (Object param : item.getMethodParams()) { //TODO handle arrays better formatted.get(METHOD_PARAMETERS).add(param == null ? UNDEFINED : new ModelNode(param.toString())); } final Throwable throwable = item.getError(); if (throwable != null) { //TODO include stack trace? formatted.get(ERROR).set(throwable.getMessage()); } return cacheString(createRecordText(item, formatted)); }