Java源码示例:com.cloudbees.syslog.MessageFormat
示例1
@Ignore
@Test
public void send2() throws Exception {
SyslogMessage msg = new SyslogMessage()
.withAppName("my-app")
.withFacility(Facility.USER)
.withHostname("my-hostname")
.withMsg("my message over tcp éèà " + new Timestamp(System.currentTimeMillis()))
.withSeverity(Severity.INFORMATIONAL)
.withTimestamp(System.currentTimeMillis());
TcpSyslogMessageSender messageSender = new TcpSyslogMessageSender();
messageSender.setSyslogServerHostname("logs2.papertrailapp.com");
messageSender.setSyslogServerPort(46022);
messageSender.setMessageFormat(MessageFormat.RFC_3164);
messageSender.setSsl(true);
System.out.println(msg.toSyslogMessage(messageSender.getMessageFormat()));
messageSender.sendMessage(msg);
}
示例2
@Ignore
@Test
public void sendOverSSL() throws Exception {
SyslogMessage msg = new SyslogMessage()
.withAppName("my-app")
.withFacility(Facility.USER)
.withHostname("my-hostname")
.withMsg("my message over tcp ssl éèà " + new Timestamp(System.currentTimeMillis()))
.withSeverity(Severity.INFORMATIONAL)
.withTimestamp(System.currentTimeMillis());
TcpSyslogMessageSender messageSender = new TcpSyslogMessageSender();
messageSender.setSyslogServerHostname("logs2.papertrailapp.com");
messageSender.setSyslogServerPort(46022);
messageSender.setMessageFormat(MessageFormat.RFC_3164);
messageSender.setSsl(true);
System.out.println(msg.toSyslogMessage(messageSender.getMessageFormat()));
messageSender.sendMessage(msg);
}
示例3
@Override
public void processEvent(Event<JsonObject> evt) {
event = evt;
allEvents.add(event);
LOG.info("Received event, name = "+evt.getEventId() + ", format = " + evt.getFormat() + ", Payload = "+evt.getData().toString());
String eventFormat = QRadarConfig.MSG_FORMAT;
if (eventFormat.equals(MessageFormat.RFC_3164.toString()) || eventFormat.equals(MessageFormat.RFC_5424.toString()))
{
UdpSyslogMessageSender messageSender = new UdpSyslogMessageSender();
messageSender.setDefaultMessageHostname("myhostname"); // some syslog cloud services may use this field to transmit a secret key
messageSender.setDefaultAppName("myapp");
messageSender.setDefaultFacility(Facility.USER);
messageSender.setDefaultSeverity(Severity.INFORMATIONAL);
messageSender.setSyslogServerHostname(QRadarConfig.IP_ADDRESS);
messageSender.setSyslogServerPort(514);
if (eventFormat.equals(MessageFormat.RFC_3164.toString()))
messageSender.setMessageFormat(MessageFormat.RFC_3164); // optional, default is RFC 3164
if (eventFormat.equals(MessageFormat.RFC_5424.toString()))
messageSender.setMessageFormat(MessageFormat.RFC_5424); // optional, default is RFC 3164
// send a Syslog message
try {
messageSender.sendMessage(evt.getData().toString());
LOG.info("Sent event to QRadar.");
System.out.println("Sent event to QRadar");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
示例4
private static SyslogDTarget getDefaultConfig() {
SyslogDTarget dtarget = new SyslogDTarget();
dtarget.config = new SyslogTargetConfig();
dtarget.config.serverName = "localhost";
dtarget.config.serverPort = 514;
dtarget.config.messageFormat = MessageFormat.RFC_5424;
dtarget.config.protocol = "UDP";
dtarget.config.hostnameEL = "${record:value('/hostname')}";
dtarget.config.appNameEL = "${record:value('/application')}";
dtarget.config.timestampEL = "${time:now()}";
dtarget.config.facilityEL = "${record:value('/facility')}";
dtarget.config.severityEL = "${record:value('/severity')}";
return dtarget;
}
示例5
@Test
public void send() throws Exception {
TcpSyslogMessageSender messageSender = new TcpSyslogMessageSender();
messageSender.setDefaultMessageHostname("mysecretkey");
messageSender.setDefaultAppName("myapp");
messageSender.setDefaultFacility(Facility.USER);
messageSender.setDefaultSeverity(Severity.INFORMATIONAL);
messageSender.setSyslogServerHostname("logs2.papertrailapp.com");
messageSender.setSyslogServerPort(46022);
messageSender.setMessageFormat(MessageFormat.RFC_3164);
messageSender.setSsl(true);
messageSender.sendMessage("unit test message over tcp éèà " + getClass() + " - " + new Timestamp(System.currentTimeMillis()));
}
示例6
public MessageFormatChooserValues() {
super(MessageFormat.class);
}