Documentation
¶
Index ¶
- Constants
- func NewAgentClientLogger(client *AgentClient, service string) logger.Logger
- func NewAgentServer(address, spaceId string, agentClient *AgentClient) *agentServer
- func ReadFrame(r io.Reader) (byte, []byte, error)
- func SetAgentClient(client *AgentClient)
- func WriteFrame(w io.Writer, frameType byte, payload []byte) error
- type AgentClient
- func (c *AgentClient) AddPortForward(entry model.PortForwardEntry) error
- func (c *AgentClient) CallMethod(req msg.CallMethodRequest) methods.JSONRPCResponse
- func (c *AgentClient) ConnectAndServe()
- func (c *AgentClient) GetAgentToken() string
- func (c *AgentClient) GetServerURL() string
- func (c *AgentClient) GetSpaceId() string
- func (c *AgentClient) HasLiveServerConnection() bool
- func (c *AgentClient) RegisterMethods(reg *methods.Registration) error
- func (c *AgentClient) RemovePortForward(localPort uint16) error
- func (c *AgentClient) ReportEvent(event *msg.Event) error
- func (c *AgentClient) RunHealthChecks()
- func (c *AgentClient) SendLogMessage(service string, level msg.LogLevel, message string) error
- func (c *AgentClient) SendNotification(req msg.CallMethodRequest)
- func (c *AgentClient) SendSpaceGetVar(name string) (string, error)
- func (c *AgentClient) SendSpaceNote(note string) error
- func (c *AgentClient) SendSpaceRestart() error
- func (c *AgentClient) SendSpaceStop() error
- func (c *AgentClient) SendSpaceVar(name, value string) error
- func (c *AgentClient) Shutdown()
- func (c *AgentClient) UnregisterAllMethods() error
- func (c *AgentClient) UpdateHealthCheckConfig(config msg.HealthConfig)
- type AgentClientLogger
- func (l *AgentClientLogger) Debug(message string, keysAndValues ...any)
- func (l *AgentClientLogger) Error(message string, keysAndValues ...any)
- func (l *AgentClientLogger) Fatal(message string, keysAndValues ...any)
- func (l *AgentClientLogger) Info(message string, keysAndValues ...any)
- func (l *AgentClientLogger) Trace(message string, keysAndValues ...any)
- func (l *AgentClientLogger) Warn(message string, keysAndValues ...any)
- func (l *AgentClientLogger) With(key string, value any) logger.Logger
- func (l *AgentClientLogger) WithError(err error) logger.Logger
- func (l *AgentClientLogger) WithGroup(group string) logger.Logger
Constants ¶
const ( FrameStdio byte = 0x00 FrameControl byte = 0x01 )
Variables ¶
This section is empty.
Functions ¶
func NewAgentClientLogger ¶ added in v0.23.0
func NewAgentClientLogger(client *AgentClient, service string) logger.Logger
NewAgentClientLogger creates a new logger that writes to the agent client log stream
func NewAgentServer ¶ added in v0.18.0
func NewAgentServer(address, spaceId string, agentClient *AgentClient) *agentServer
func SetAgentClient ¶ added in v0.23.0
func SetAgentClient(client *AgentClient)
Types ¶
type AgentClient ¶ added in v0.18.0
type AgentClient struct {
// contains filtered or unexported fields
}
func NewAgentClient ¶ added in v0.18.0
func NewAgentClient(defaultServerAddress, spaceId string) *AgentClient
func (*AgentClient) AddPortForward ¶ added in v0.24.0
func (c *AgentClient) AddPortForward(entry model.PortForwardEntry) error
func (*AgentClient) CallMethod ¶ added in v0.28.0
func (c *AgentClient) CallMethod(req msg.CallMethodRequest) methods.JSONRPCResponse
CallMethod forwards a JSON-RPC call to the method server. In concurrent mode many calls may be in flight at once; in serial mode calls queue one at a time. The caller's original id is preserved on the returned response — the jsonrpc client generates its own wire ids, so they never need to be unique.
func (*AgentClient) ConnectAndServe ¶ added in v0.18.0
func (c *AgentClient) ConnectAndServe()
func (*AgentClient) GetAgentToken ¶ added in v0.23.0
func (c *AgentClient) GetAgentToken() string
func (*AgentClient) GetServerURL ¶ added in v0.23.0
func (c *AgentClient) GetServerURL() string
func (*AgentClient) GetSpaceId ¶ added in v0.22.0
func (c *AgentClient) GetSpaceId() string
func (*AgentClient) HasLiveServerConnection ¶ added in v0.28.0
func (c *AgentClient) HasLiveServerConnection() bool
HasLiveServerConnection reports whether the agent currently has at least one knot server connection with a live mux session. Method registration can only be published once a session exists (publishMethods fails, without retry, if none is connected), so startup registration waits on this.
func (*AgentClient) RegisterMethods ¶ added in v0.28.0
func (c *AgentClient) RegisterMethods(reg *methods.Registration) error
func (*AgentClient) RemovePortForward ¶ added in v0.24.0
func (c *AgentClient) RemovePortForward(localPort uint16) error
func (*AgentClient) ReportEvent ¶ added in v0.28.0
func (c *AgentClient) ReportEvent(event *msg.Event) error
func (*AgentClient) RunHealthChecks ¶ added in v0.24.0
func (c *AgentClient) RunHealthChecks()
RunHealthChecks starts the health check loop for the agent. It runs once per agent process (not per server connection).
func (*AgentClient) SendLogMessage ¶ added in v0.18.0
func (*AgentClient) SendNotification ¶ added in v0.28.0
func (c *AgentClient) SendNotification(req msg.CallMethodRequest)
SendNotification forwards a JSON-RPC notification (no id) to the method server. It returns immediately — no response is expected.
func (*AgentClient) SendSpaceGetVar ¶ added in v0.21.0
func (c *AgentClient) SendSpaceGetVar(name string) (string, error)
func (*AgentClient) SendSpaceNote ¶ added in v0.18.0
func (c *AgentClient) SendSpaceNote(note string) error
func (*AgentClient) SendSpaceRestart ¶ added in v0.18.0
func (c *AgentClient) SendSpaceRestart() error
func (*AgentClient) SendSpaceStop ¶ added in v0.18.0
func (c *AgentClient) SendSpaceStop() error
func (*AgentClient) SendSpaceVar ¶ added in v0.21.0
func (c *AgentClient) SendSpaceVar(name, value string) error
func (*AgentClient) Shutdown ¶ added in v0.18.0
func (c *AgentClient) Shutdown()
func (*AgentClient) UnregisterAllMethods ¶ added in v0.28.0
func (c *AgentClient) UnregisterAllMethods() error
UnregisterAllMethods removes all methods from the knot server, stops the stdio method server process, and clears the stashed registration so reconnect doesn't republish dead methods. Called by `knot methods unregister` and by the Scriptling server.unregister() (no args).
func (*AgentClient) UpdateHealthCheckConfig ¶ added in v0.28.0
func (c *AgentClient) UpdateHealthCheckConfig(config msg.HealthConfig)
type AgentClientLogger ¶ added in v0.23.0
type AgentClientLogger struct {
// contains filtered or unexported fields
}
AgentClientLogger is a logger.Logger implementation that writes to the agent client log stream
func (*AgentClientLogger) Debug ¶ added in v0.23.0
func (l *AgentClientLogger) Debug(message string, keysAndValues ...any)
Debug logs a debug message
func (*AgentClientLogger) Error ¶ added in v0.23.0
func (l *AgentClientLogger) Error(message string, keysAndValues ...any)
Error logs an error message
func (*AgentClientLogger) Fatal ¶ added in v0.23.0
func (l *AgentClientLogger) Fatal(message string, keysAndValues ...any)
Fatal logs a fatal message and exits
func (*AgentClientLogger) Info ¶ added in v0.23.0
func (l *AgentClientLogger) Info(message string, keysAndValues ...any)
Info logs an info message
func (*AgentClientLogger) Trace ¶ added in v0.23.0
func (l *AgentClientLogger) Trace(message string, keysAndValues ...any)
Trace logs a trace message
func (*AgentClientLogger) Warn ¶ added in v0.23.0
func (l *AgentClientLogger) Warn(message string, keysAndValues ...any)
Warn logs a warning message
func (*AgentClientLogger) With ¶ added in v0.23.0
func (l *AgentClientLogger) With(key string, value any) logger.Logger
With adds a key-value pair to the logger
Source Files
¶
- agent_port_server.go
- agent_server.go
- client.go
- code-server.go
- console_stub.go
- copy_file.go
- execute_script.go
- execute_script_stream.go
- healthcheck.go
- logger.go
- logmessage.go
- method_server.go
- port_commands.go
- report_state.go
- resource_usage.go
- run_command.go
- space.go
- stream_framing.go
- terminal.go
- tunnel_commands.go
- vscode-tunnel.go