Interface LogsServiceGrpc.AsyncService
- All Known Implementing Classes:
LogServiceImpl, LogsServiceGrpc.LogsServiceImplBase
- Enclosing class:
LogsServiceGrpc
public static interface LogsServiceGrpc.AsyncService
Service for accessing SoulFire server logs. Provides both historical log retrieval and real-time log streaming capabilities. All methods require appropriate authentication and permissions based on the requested scope.
-
Method Summary
Modifier and TypeMethodDescriptiondefault voidgetPrevious(PreviousLogRequest request, io.grpc.stub.StreamObserver<PreviousLogResponse> responseObserver) Retrieves historical log entries from the server's in-memory log buffer.default voidsubscribe(LogRequest request, io.grpc.stub.StreamObserver<LogResponse> responseObserver) Subscribes to a real-time stream of log entries matching the specified scope.
-
Method Details
-
getPrevious
default void getPrevious(PreviousLogRequest request, io.grpc.stub.StreamObserver<PreviousLogResponse> responseObserver) Retrieves historical log entries from the server's in-memory log buffer. The server maintains a rolling buffer of the last 300 log entries. Only returns non-personal logs that match the specified scope. Permissions required: - GlobalLogScope: GLOBAL_SUBSCRIBE_LOGS - InstanceLogScope/BotLogScope/InstanceScriptLogScope: INSTANCE_SUBSCRIBE_LOGS for the instance - PersonalLogScope: No special permissions (but returns empty since personal logs are not stored) Errors: - PERMISSION_DENIED: User lacks required permission for the requested scope - INVALID_ARGUMENT: Scope not set or invalid UUID format - INTERNAL: Server error while retrieving logs
-
subscribe
default void subscribe(LogRequest request, io.grpc.stub.StreamObserver<LogResponse> responseObserver) Subscribes to a real-time stream of log entries matching the specified scope. The stream remains open until cancelled by the client or the connection is lost. Permissions are re-validated periodically (every 1 second) to handle permission changes. For PersonalLogScope: Receives personal messages directed to the authenticated user. Personal messages are transient and only delivered to active subscribers. Permissions required: - GlobalLogScope: GLOBAL_SUBSCRIBE_LOGS - InstanceLogScope/BotLogScope/InstanceScriptLogScope: INSTANCE_SUBSCRIBE_LOGS for the instance - PersonalLogScope: No special permissions required Errors: - PERMISSION_DENIED: User lacks required permission for the requested scope - INVALID_ARGUMENT: Scope not set or invalid UUID format - INTERNAL: Server error while setting up subscription
-