LogStream
Object-centric interface for Galileo log streams. This class provides an intuitive way to work with Galileo log streams, offering methods for managing log streams and their associated metrics. ExamplesCreate a new log stream and persist it
log_stream = LogStream(name=“Production Logs”, project_name=“My AI Project”).create()Get an existing log stream
log_stream = LogStream.get(name=“Production Logs”, project_name=“My AI Project”)LogStreams can also be created through Project instances
from galileo.project import Project project = Project.get(name=“My AI Project”) log_stream = project.create_log_stream(name=“Production Logs”)Enable metrics on the log stream
from galileo.schema.metrics import GalileoMetrics local_metrics = log_stream.enable_metrics([ GalileoMetrics.correctness, GalileoMetrics.completeness, “context_relevance” ])Refresh log stream state from API
log_stream.refresh()context
Your logging code here
response = openai_client.chat.completions.create(…)create
export_records
record_type: The type of records to export (SPAN, TRACE, or SESSION).filters: A list of filters to apply to the export.sort: A sort clause to order the exported records.export_format: The desired format for the exported data.column_ids: A list of column IDs to include in the export.redact: Redact sensitive data from the response.
get
name(str): The log stream name.project_id(Optional[str]): The project ID. If neither project_id nor project_name is provided, falls back to GALILEO_PROJECT_ID or GALILEO_PROJECT environment variables.project_name(Optional[str]): The project name. If neither project_id nor project_name is provided, falls back to GALILEO_PROJECT environment variable.
get_metrics
get_sessions
filters: A list of filters to apply to the query.sort: A sort clause to order the query results.limit: The maximum number of records to return.starting_token: The token for the next page of results.
get_spans
filters: A list of filters to apply to the query.sort: A sort clause to order the query results.limit: The maximum number of records to return.starting_token: The token for the next page of results.
get_traces
filters: A list of filters to apply to the query.sort: A sort clause to order the query results.limit: The maximum number of records to return.starting_token: The token for the next page of results.
list
starting_token (from
next_starting_token on a prior response) to fetch subsequent pages.
Arguments
project_id(Optional[str]): The project ID. If neither project_id nor project_name is provided, falls back to GALILEO_PROJECT_ID or GALILEO_PROJECT environment variables.project_name(Optional[str]): The project name. If neither project_id nor project_name is provided, falls back to GALILEO_PROJECT environment variable.limit(Union[Unset, int]): Maximum number of log streams to return per page. Defaults to 100.starting_token(Union[Unset, int]): Pagination token to start from. Defaults to 0 (first page).
project
query
record_type: The type of records to query (SPAN, TRACE, or SESSION).filters: A list of filters to apply to the query.sort: A sort clause to order the query results.limit: The maximum number of records to return.starting_token: The token for the next page of results.
refresh
session_columns
Access a specific column
model_column = columns[“model”]Filter using columns
sessions = log_stream.get_sessions( filters=[columns[“model”].equals(“gpt-4o-mini”)], sort=columns[“created_at”].descending() )set_metrics
metrics: List of metrics to set. Supports:- GalileoMetrics enum values (e.g., GalileoMetrics.correctness)
- Metric objects (including from Metric.get(id=”…”))
- LocalMetricConfig objects for custom scoring functions
- String names of built-in metrics