googleapis / googleapis/google-cloud-java

[java-logging] Impossible to create com.google.cloud.logging.LogEntry with both TextPayload and JsonPayload

Offen
#11,915 0 Kommentare 0 Reaktionen 1 zugewiesene Person Beansprucht von @cindy-peng Auf GitHub ansehen
api: logging priority: p3
Vorherrschende Sprache
Java
Sterne
2.1k
Forks
1.2k
Ø Merge
1 T. 23 Std.
Gemergte PRs (30 T.)
154

Beschreibung

My program perfectly send logs to Logs Explorer with Google's `com.google.cloud.logging` library. However, when I want to set both textPayload and jsonPayload, I can't.

If just JsonPayload is set, then I'm unable to see log's message on preview. It just shows the URL that my Cloud Function works.

However, in com.google.logging.v2.LogEntry model, I can set both textPayload and jsonPayload. In this way I cannot send logs to server because of the `com.google.cloud.logging.Logging` instance's `write` method does not accept this type of LogEntry

#### Steps to reproduce

1. Write a simple LogEntry build statement with JsonPayload or TextPayload (cannot do both, that's the issue)
2. Run `logging.write(Collections.singleton(logEntry));` and see it display textpayload's content for preview on Logs Explorer but if you set JsonPayload, it just dont.

#### Code example

```java
LogEntry logEntry =
LogEntry.newBuilder(logPayload.getPayload())
.setLogName(GOOGLE_CLOUD_LOG_NAME)
.setSeverity(severity)
.setTimestamp(logPayload.getTimestamp())
.build();
logging.write(Collections.singleton(logEntry));
```

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.