v1

latestOpenAPI 3.1.02026-07-13154170539.0 KB
Logs

Join Logs

Joins two sets of logs based on specified criteria and creates new logs with the joined data.

The join operation is similar to SQL joins, allowing inner, left, right, and outer joins between two sets of logs filtered by the criteria in pair_of_args.

Args: pair_of_args: List of two dictionaries containing filtering criteria for logs to join. Each dictionary can include context, filter_expr, from_ids, etc. join_expr: SQL expression for the join condition using aliases A and B (e.g., 'A.user_id = B.user_id') mode: Type of join to perform ('inner', 'left', 'right', or 'outer') new_context: Name for the new context where joined logs will be stored columns: Optional list of column names to include in the joined result project_name: Name of the project containing the logs

Returns: JSON response with info about the join operation

post/v0/logs/join

Request body

pair_of_argsobject[] required

Two sets of filtering criteria for logs to join

join_exprstring required

SQL expression for join condition using aliases A and B

modestring required

Join type: 'inner', 'left', 'right', or 'outer'

new_contextstring required

Name for the new context where joined logs will be stored

project_namestring required

Name of the project

copyboolean

If True, a copy of each log is created and then added to the context. If False, the existing log associations are simply used. If omitted, defaults to True.

Example request

{
  "pair_of_args": [
    {
      "context": "context_a",
      "filter_expr": "user_id == 1"
    },
    {
      "context": "context_b",
      "filter_expr": "user_id == 2"
    }
  ],
  "join_expr": "A.user_id == B.user_id",
  "mode": "inner",
  "new_context": "Derived/A_B"
}

Response

Logs joined successfully

{"stackTrail":"paths:/v0/logs/join:post:responses:200:content:application/json:schema","oasType":"schema","type":"unknown"}