/** * Example of writing log entries and providing a default log name and monitored resource. Logging * writes are asynchronous by default. {@link Logging#setWriteSynchronicity(Synchronicity)} can be * used to update the synchronicity. */ // [TARGET write(Iterable, WriteOption...)] // [VARIABLE "my_log_name"] public void write(String logName) { // [START logging_write_log_entry] List<LogEntry> entries = new ArrayList<>(); entries.add(LogEntry.of(StringPayload.of("Entry payload"))); Map<String, Object> jsonMap = new HashMap<>(); jsonMap.put("key", "value"); entries.add(LogEntry.of(JsonPayload.of(jsonMap))); logging.write( entries, WriteOption.logName(logName), WriteOption.resource(MonitoredResource.newBuilder("global").build())); // [END logging_write_log_entry] }
@Test public void testToAndFromPb() { compareLogEntry(STRING_ENTRY, LogEntry.fromPb(STRING_ENTRY.toPb("project"))); compareLogEntry(JSON_ENTRY, LogEntry.fromPb(JSON_ENTRY.toPb("project"))); compareLogEntry(PROTO_ENTRY, LogEntry.fromPb(PROTO_ENTRY.toPb("project"))); LogEntry logEntry = LogEntry.of(STRING_PAYLOAD); compareLogEntry(logEntry, LogEntry.fromPb(logEntry.toPb("project"))); logEntry = LogEntry.of(LOG_NAME, RESOURCE, STRING_PAYLOAD); compareLogEntry(logEntry, LogEntry.fromPb(logEntry.toPb("project"))); }
@Test public void testOf() { LogEntry logEntry = LogEntry.of(STRING_PAYLOAD); assertEquals(STRING_PAYLOAD, logEntry.getPayload()); assertEquals(Severity.DEFAULT, logEntry.getSeverity()); assertFalse(logEntry.getTraceSampled()); assertNull(logEntry.getSourceLocation()); logEntry = LogEntry.of(LOG_NAME, RESOURCE, STRING_PAYLOAD); assertEquals(STRING_PAYLOAD, logEntry.getPayload()); assertEquals(LOG_NAME, logEntry.getLogName());