Packages
snakepit
0.4.3
0.13.0
0.12.0
0.11.1
0.11.0
0.10.1
0.10.0
0.9.1
0.9.0
0.8.9
0.8.8
0.8.7
0.8.6
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
0.7.7
0.7.6
0.7.5
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
0.6.11
0.6.10
0.6.9
0.6.8
0.6.7
0.6.6
0.6.5
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
0.5.1
0.5.0
0.4.3
0.4.2
0.4.1
0.4.0
0.3.3
0.3.2
0.3.1
0.3.0
0.2.1
0.2.0
0.1.2
0.1.1
0.1.0
High-performance pooler and session manager for external language integrations. Supports Python, Node.js, Ruby, and more with gRPC streaming, session management, and production-ready process cleanup.
Current section
Files
Jump to
Current section
Files
lib/snakepit/grpc/snakepit.pb.ex
# Map entry definitions must come first
defmodule Snakepit.Grpc.ExecuteRequest.ArgsEntry do
@moduledoc false
use Protobuf, map: true, syntax: :proto3
field(:key, 1, type: :string)
field(:value, 2, type: :bytes)
end
defmodule Snakepit.Grpc.ExecuteResponse.ResultEntry do
@moduledoc false
use Protobuf, map: true, syntax: :proto3
field(:key, 1, type: :string)
field(:value, 2, type: :bytes)
end
defmodule Snakepit.Grpc.StreamResponse.ChunkEntry do
@moduledoc false
use Protobuf, map: true, syntax: :proto3
field(:key, 1, type: :string)
field(:value, 2, type: :bytes)
end
defmodule Snakepit.Grpc.SessionRequest.ArgsEntry do
@moduledoc false
use Protobuf, map: true, syntax: :proto3
field(:key, 1, type: :string)
field(:value, 2, type: :bytes)
end
defmodule Snakepit.Grpc.InfoResponse.CapabilitiesEntry do
@moduledoc false
use Protobuf, map: true, syntax: :proto3
field(:key, 1, type: :string)
field(:value, 2, type: :string)
end
defmodule Snakepit.Grpc.InfoResponse.SystemInfoEntry do
@moduledoc false
use Protobuf, map: true, syntax: :proto3
field(:key, 1, type: :string)
field(:value, 2, type: :string)
end
# Main message definitions
defmodule Snakepit.Grpc.ExecuteRequest do
@moduledoc false
use Protobuf, syntax: :proto3
field(:command, 1, type: :string)
field(:args, 2, repeated: true, type: Snakepit.Grpc.ExecuteRequest.ArgsEntry, map: true)
field(:timeout_ms, 3, type: :int32)
field(:request_id, 4, type: :string)
end
defmodule Snakepit.Grpc.ExecuteResponse do
@moduledoc false
use Protobuf, syntax: :proto3
field(:success, 1, type: :bool)
field(:result, 2, repeated: true, type: Snakepit.Grpc.ExecuteResponse.ResultEntry, map: true)
field(:error, 3, type: :string)
field(:timestamp, 4, type: :int64)
field(:request_id, 5, type: :string)
end
defmodule Snakepit.Grpc.StreamResponse do
@moduledoc false
use Protobuf, syntax: :proto3
field(:is_final, 1, type: :bool)
field(:chunk, 2, repeated: true, type: Snakepit.Grpc.StreamResponse.ChunkEntry, map: true)
field(:error, 3, type: :string)
field(:timestamp, 4, type: :int64)
field(:request_id, 5, type: :string)
field(:chunk_index, 6, type: :int32)
end
defmodule Snakepit.Grpc.SessionRequest do
@moduledoc false
use Protobuf, syntax: :proto3
field(:session_id, 1, type: :string)
field(:command, 2, type: :string)
field(:args, 3, repeated: true, type: Snakepit.Grpc.SessionRequest.ArgsEntry, map: true)
field(:timeout_ms, 4, type: :int32)
field(:request_id, 5, type: :string)
end
defmodule Snakepit.Grpc.HealthRequest do
@moduledoc false
use Protobuf, syntax: :proto3
field(:worker_id, 1, type: :string)
end
defmodule Snakepit.Grpc.HealthResponse do
@moduledoc false
use Protobuf, syntax: :proto3
field(:healthy, 1, type: :bool)
field(:worker_id, 2, type: :string)
field(:uptime_ms, 3, type: :int64)
field(:total_requests, 4, type: :int64)
field(:total_errors, 5, type: :int64)
field(:version, 6, type: :string)
end
defmodule Snakepit.Grpc.InfoRequest do
@moduledoc false
use Protobuf, syntax: :proto3
field(:include_capabilities, 1, type: :bool)
field(:include_stats, 2, type: :bool)
end
defmodule Snakepit.Grpc.WorkerStats do
@moduledoc false
use Protobuf, syntax: :proto3
field(:requests_handled, 1, type: :int64)
field(:requests_failed, 2, type: :int64)
field(:uptime_ms, 3, type: :int64)
field(:memory_usage_bytes, 4, type: :int64)
field(:cpu_usage_percent, 5, type: :double)
field(:active_sessions, 6, type: :int64)
end
defmodule Snakepit.Grpc.InfoResponse do
@moduledoc false
use Protobuf, syntax: :proto3
field(:worker_type, 1, type: :string)
field(:version, 2, type: :string)
field(:supported_commands, 3, repeated: true, type: :string)
field(:capabilities, 4,
repeated: true,
type: Snakepit.Grpc.InfoResponse.CapabilitiesEntry,
map: true
)
field(:stats, 5, type: Snakepit.Grpc.WorkerStats)
field(:system_info, 6,
repeated: true,
type: Snakepit.Grpc.InfoResponse.SystemInfoEntry,
map: true
)
end