time="2024-07-16T14:05:28Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-authentication-1 Creating Container integration-test-authorization-1 Creating Container integration-test-gateway-1 Creating Container integration-test-experiment-1 Creating Container integration-test-federation-1 Creating Container integration-test-device-1 Creating Container integration-test-gateway-1 Created Container integration-test-authentication-1 Created Container integration-test-federation-1 Created Container integration-test-experiment-1 Created Container integration-test-device-1 Created Container integration-test-authorization-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-1, gateway-1 gateway-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration gateway-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf gateway-1 | /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-create_config.sh gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/authorization_service.conf to /etc/nginx/authorization_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/nginx.conf to /etc/nginx/nginx.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/device_service.conf to /etc/nginx/device_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/experiment_service.conf to /etc/nginx/experiment_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/auth_service.conf to /etc/nginx/auth_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/federation_service.conf to /etc/nginx/federation_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_json_errors.conf to /etc/nginx/api_json_errors.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_backends.conf to /etc/nginx/api_backends.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_gateway.conf to /etc/nginx/api_gateway.conf gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh gateway-1 | /docker-entrypoint.sh: Configuration complete; ready for start up federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","message":"Federation Service started successfully"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-07-16T14:06:10Z"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} device-1 | {"level":"info","message":"Device Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:60046","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-07-16T14:06:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60046","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.313119,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:10Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1721138770.8541234} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1721138770.8541987} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1721138770.854216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"grpc TLS is disabled, serving connections using insecure plaintext","subsystem":"openfga","timestamp":1721138770.8542476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿ“ˆ starting metrics server on '0.0.0.0:2112'","subsystem":"openfga","timestamp":1721138770.8542666} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","date":"2023-06-30T20:11:20Z","go-version":"go1.20.5","level":"info","message":"๐Ÿš€ starting openfga service...","subsystem":"openfga","timestamp":1721138770.854562,"version":"v1.2.0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"grpc server listening on 'localhost:3012'...","subsystem":"openfga","timestamp":1721138770.855104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1721138770.8563437} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"CreateStore","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-07-16T14:06:10.876082438Z","id":"01J2XXTWXW3V5BDCC93YTHPR9K","name":"crosslab","updated_at":"2024-07-16T14:06:10.876082438Z"},"request_id":"ebe23929-425e-4a5f-afb5-bec9e00bc298","subsystem":"openfga","timestamp":1721138770.8762112} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"WriteAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"schema_version":"1.1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]},"raw_response":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A"},"request_id":"57aaadce-aea1-47c1-9cbc-7b15583d425b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138770.9168699} authorization-1 | {"client_addr":"127.0.0.1:60046","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-07-16T14:06:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60046","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.228122,"resp_status":204,"subsystem":"opa","time":"2024-07-16T14:06:10Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.66.0/opa_linux_amd64","latest_version":"0.66.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.66.0","subsystem":"opa","time":"2024-07-16T14:06:11Z"} gateway-1 | {"time_local":"16/Jul/2024:14:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /auth/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.020","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"259f08ede97e58b1dae735329b3825b9"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 13ms","method":"HEAD","requestID":"259f08ede97e58b1dae735329b3825b9","responseTime":13,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"16/Jul/2024:14:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /device/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.011","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"7b7dc3ca642f95cce743e75db9b36e28"} device-1 | {"level":"info","message":"HEAD /device/status 200 8ms","method":"HEAD","requestID":"90c96c60-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"16/Jul/2024:14:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /authorization/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.008","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"e42e285e8783fa11e8c859e9c60b5210"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 5ms","method":"HEAD","requestID":"e42e285e8783fa11e8c859e9c60b5210","responseTime":5,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"16/Jul/2024:14:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /federation/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"1f717d35546a22930ea5b664a44d23b5"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 8ms","method":"HEAD","requestID":"90ce9c80-437c-11ef-b0de-272029b2b811","responseTime":9,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"16/Jul/2024:14:06:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /experiment/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.017","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"fa26880599d319d9cb3eb9e0e862a7d3"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 11ms","method":"HEAD","requestID":"90d21ef0-437c-11ef-a5d2-dd8cd265e48a","responseTime":11,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"16/Jul/2024:14:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7aa0d48654042bd95e0ed63b503a8cc1"} authentication-1 | {"level":"info","message":"POST /login 201 123ms","method":"POST","requestID":"7aa0d48654042bd95e0ed63b503a8cc1","responseTime":123,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc3OH0.osFAZy_6mR3n01D8FsY5-vGr4acMMgW0tyRGhmXkmlk","level":"info","message":"auth send jwt","requestID":"37b6501c4da43f504ed0b5b2c5151c5e"} authentication-1 | {"level":"info","message":"GET /auth 200 23ms","method":"GET","requestID":"37b6501c4da43f504ed0b5b2c5151c5e","responseTime":23,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"37b6501c4da43f504ed0b5b2c5151c5e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.391531,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"37b6501c4da43f504ed0b5b2c5151c5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138778,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc3OH0.osFAZy_6mR3n01D8FsY5-vGr4acMMgW0tyRGhmXkmlk"} authorization-1 | {"level":"info","message":"POST /authorize 200 25ms","method":"POST","requestID":"37b6501c4da43f504ed0b5b2c5151c5e","responseTime":25,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bd3d7dc6-d7aa-49de-b22e-e90dc60ca40c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.7670097} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"37b6501c4da43f504ed0b5b2c5151c5e","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7caf5f6-6914-42c5-ac29-561f7464062a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.7819078} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"37b6501c4da43f504ed0b5b2c5151c5e","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8936e997-864a-4459-b71f-ad365a19c807","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.80011} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7752013d-dcbb-4ffb-9b0a-977c66203345","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.8005383} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"37b6501c4da43f504ed0b5b2c5151c5e","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.800086044Z"}]},"request_id":"34904ad0-d6f5-4bd0-b338-cda5f29c3011","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.8087218} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"37b6501c4da43f504ed0b5b2c5151c5e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"37b6501c4da43f504ed0b5b2c5151c5e"} gateway-1 | {"time_local":"16/Jul/2024:14:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.233","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"37b6501c4da43f504ed0b5b2c5151c5e"} device-1 | {"level":"info","message":"POST /devices? 201 194ms","method":"POST","requestID":"37b6501c4da43f504ed0b5b2c5151c5e","responseTime":194,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc3OH0.osFAZy_6mR3n01D8FsY5-vGr4acMMgW0tyRGhmXkmlk","level":"info","message":"auth send jwt","requestID":"377d4083c5c60549bd85acdccf539e7d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"377d4083c5c60549bd85acdccf539e7d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"377d4083c5c60549bd85acdccf539e7d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.710517,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"377d4083c5c60549bd85acdccf539e7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138778,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc3OH0.osFAZy_6mR3n01D8FsY5-vGr4acMMgW0tyRGhmXkmlk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"377d4083c5c60549bd85acdccf539e7d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2a4313f6-5634-4753-9d95-797ce1aa8332","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.8670814} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"377d4083c5c60549bd85acdccf539e7d","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1fd129e5-3e88-45f9-8606-1ae4deb616d8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.8794665} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"377d4083c5c60549bd85acdccf539e7d","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"9995c23e-516b-48b0-96dc-a7bf071f90ab","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.8990037} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"630db380-d64d-4587-9399-35c4f97bcc77","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.8993897} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"377d4083c5c60549bd85acdccf539e7d","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.898981164Z"}]},"request_id":"7a164d6f-c73f-4b8a-baa4-3cd94239c0cd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138778.9127488} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"377d4083c5c60549bd85acdccf539e7d","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"377d4083c5c60549bd85acdccf539e7d"} gateway-1 | {"time_local":"16/Jul/2024:14:06:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.085","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"377d4083c5c60549bd85acdccf539e7d"} device-1 | {"level":"info","message":"POST /devices? 201 78ms","method":"POST","requestID":"377d4083c5c60549bd85acdccf539e7d","responseTime":78,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1e4fb3f67366c09574a4de3bc310c637","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1e4fb3f67366c09574a4de3bc310c637","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"250a1d8d9ea55bf2352e42c9b76ea6f7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"250a1d8d9ea55bf2352e42c9b76ea6f7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.009","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1e4fb3f67366c09574a4de3bc310c637"} device-1 | {"level":"info","message":"OPTIONS /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/websocket 200 3ms","method":"OPTIONS","requestID":"1e4fb3f67366c09574a4de3bc310c637","responseTime":3,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.013","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"250a1d8d9ea55bf2352e42c9b76ea6f7"} device-1 | {"level":"info","message":"OPTIONS /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/websocket 200 1ms","method":"OPTIONS","requestID":"250a1d8d9ea55bf2352e42c9b76ea6f7","responseTime":1,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4","level":"info","message":"auth send jwt","requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86","responseTime":11,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4","level":"info","message":"auth send jwt","requestID":"548b022d7a6d51f194e613ffaa44d3eb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86"} authentication-1 | {"level":"info","message":"GET /auth 200 10ms","method":"GET","requestID":"548b022d7a6d51f194e613ffaa44d3eb","responseTime":10,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"548b022d7a6d51f194e613ffaa44d3eb"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.011604,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.002635,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"548b022d7a6d51f194e613ffaa44d3eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"548b022d7a6d51f194e613ffaa44d3eb","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"548b022d7a6d51f194e613ffaa44d3eb"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.065","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"548b022d7a6d51f194e613ffaa44d3eb"} device-1 | {"level":"info","message":"POST /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/websocket 200 48ms","method":"POST","requestID":"548b022d7a6d51f194e613ffaa44d3eb","responseTime":48,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.070","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86"} device-1 | {"level":"info","message":"POST /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/websocket 200 55ms","method":"POST","requestID":"d58ea82b5e46c8e4f2ea0a6add8ece86","responseTime":55,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4","level":"info","message":"auth send jwt","requestID":"f348cf733cec478b5ca610e4b9908e57"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f348cf733cec478b5ca610e4b9908e57","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f348cf733cec478b5ca610e4b9908e57"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.391208,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f348cf733cec478b5ca610e4b9908e57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f348cf733cec478b5ca610e4b9908e57","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.800086044Z"}]},"request_id":"21179fac-de29-468b-abdb-e77468af9774","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.446143} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f348cf733cec478b5ca610e4b9908e57","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f348cf733cec478b5ca610e4b9908e57"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f348cf733cec478b5ca610e4b9908e57"} device-1 | {"level":"info","message":"GET /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738? 200 41ms","method":"GET","requestID":"f348cf733cec478b5ca610e4b9908e57","responseTime":41,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4","level":"info","message":"auth send jwt","requestID":"7b19240ba79c9bd7e3145585853bab7a"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"7b19240ba79c9bd7e3145585853bab7a","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b19240ba79c9bd7e3145585853bab7a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169608,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7b19240ba79c9bd7e3145585853bab7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7b19240ba79c9bd7e3145585853bab7a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.898981164Z"}]},"request_id":"fe36f27c-45e5-47ae-a636-879853646006","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.498635} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"7b19240ba79c9bd7e3145585853bab7a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b19240ba79c9bd7e3145585853bab7a"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b19240ba79c9bd7e3145585853bab7a"} device-1 | {"level":"info","message":"GET /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181? 200 27ms","method":"GET","requestID":"7b19240ba79c9bd7e3145585853bab7a","responseTime":27,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4","level":"info","message":"auth send jwt","requestID":"b698dbb7dab10b3b5123deb86e638209"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b698dbb7dab10b3b5123deb86e638209","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b698dbb7dab10b3b5123deb86e638209"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.74672,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b698dbb7dab10b3b5123deb86e638209","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b698dbb7dab10b3b5123deb86e638209","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Attempting to run experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Attempting to book experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully booked experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9469c4a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"946a39d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910311,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9469c4a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9469c4a0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.773205,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"946a39d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"946a39d0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.800086044Z"}]},"request_id":"5c2bc9d1-0ab1-4e26-9fd5-bf9cf01f4d9e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.6896932} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"9469c4a0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.898981164Z"}]},"request_id":"f93d0aac-dbf2-4293-b28c-818b15d0decb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.693068} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"946a39d0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9469c4a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738? 200 29ms","method":"GET","requestID":"9469c4a0-437c-11ef-8659-f5877ab12720","responseTime":29,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"946a39d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181? 200 28ms","method":"GET","requestID":"946a39d0-437c-11ef-8659-f5877ab12720","responseTime":28,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Setting up experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully set up experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9479a320-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9479f140-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.97123,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992655,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"947ab490-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9479a320-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully running experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9479a320-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9479f140-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9479f140-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.878192,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"470c9475-49f7-462e-8d1a-a74da2ae8788","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.799618} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"947ab490-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"947ab490-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.898981164Z"}]},"request_id":"ccffe0bc-8777-4f07-8156-13e23899199e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8038678} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"9479f140-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"947ab490-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.800086044Z"}]},"request_id":"602f0b57-8247-4c93-a2e2-ecbf0fe5cda9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8099203} device-1 | {"level":"info","message":"POST /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling 200 26ms","method":"POST","requestID":"947ab490-437c-11ef-8659-f5877ab12720","responseTime":26,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9479a320-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7372b4-bc6a-4c19-8e42-9173f033984a#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7372b4-bc6a-4c19-8e42-9173f033984a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"7f83a72b-9687-4ee7-b462-e533c895baec","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8156698} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9dc612e1-5cbd-4654-b17d-27028b00ea3c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8160284} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"947f9690-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9479f140-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181? 200 41ms","method":"GET","requestID":"9479f140-437c-11ef-8659-f5877ab12720","responseTime":41,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9479a320-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"b698dbb7dab10b3b5123deb86e638209","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738? 200 44ms","method":"GET","requestID":"9479a320-437c-11ef-8659-f5877ab12720","responseTime":44,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a02a648-9285-443e-b8cd-39f512db28f4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8259172} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.408885,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"947f9690-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"947f9690-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94819260-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"947f9690-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling 200 15ms","method":"POST","requestID":"947f9690-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b698dbb7dab10b3b5123deb86e638209"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2bbcbdd8-7d15-4fee-aeda-7a1ae3e3b788","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8358626} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.289957,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94819260-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94819260-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.326","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"level":"info","message":"POST /experiments? 201 307ms","method":"POST","requestID":"b698dbb7dab10b3b5123deb86e638209","responseTime":307,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94819260-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling 200 11ms","method":"POST","requestID":"94819260-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9483dc50-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4","level":"info","message":"auth send jwt","requestID":"b1e30614c5d242080e2327faefb859b2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b1e30614c5d242080e2327faefb859b2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b1e30614c5d242080e2327faefb859b2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b36b2bc-11ad-4acb-ada0-b717273af497","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8503437} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.212666,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9483dc50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9483dc50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.59544,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b1e30614c5d242080e2327faefb859b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1e30614c5d242080e2327faefb859b2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9483dc50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling 200 12ms","method":"POST","requestID":"9483dc50-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.800086044Z"}]},"request_id":"668808ef-3357-4e4a-971d-03062c9fe2aa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8580298} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b1e30614c5d242080e2327faefb859b2","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Building connection plan","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"08e3865d-1fb6-4ea0-9484-03030980fb41"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"a73cd7a8-07a8-491d-9da6-10df8a1d5b88"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"249d8f28-151d-40cf-886d-7a5d77a4d96d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b698dbb7dab10b3b5123deb86e638209"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b698dbb7dab10b3b5123deb86e638209"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b1e30614c5d242080e2327faefb859b2"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b1e30614c5d242080e2327faefb859b2"} device-1 | {"level":"info","message":"GET /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738? 200 15ms","method":"GET","requestID":"b1e30614c5d242080e2327faefb859b2","responseTime":15,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4","level":"info","message":"auth send jwt","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"948737b0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.01475,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"948737b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"948737b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.63382,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2b0e7c9b487a4ac0e296a831347bd8a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138781,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4MX0.f73Nfoyhj8ocKwkLXKXSC1Dc_9BtDCT69W9fVYzCeR4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:18.898981164Z"}]},"request_id":"4c59b980-cda0-4cf3-92fb-5cd6840e6bfe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8804216} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6"} gateway-1 | {"time_local":"16/Jul/2024:14:06:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6"} device-1 | {"level":"info","message":"GET /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181? 200 17ms","method":"GET","requestID":"2b0e7c9b487a4ac0e296a831347bd8a6","responseTime":17,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"c62ace71-56b2-495a-b3a4-851dbf6f6948","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8958316} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"212a8779-933d-4ea7-a811-99d034a8ae59","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.8962305} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"948737b0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"948737b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"948737b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5'","requestID":"948737b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5'","requestID":"948737b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"948737b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 47ms","method":"POST","requestID":"948737b0-437c-11ef-8659-f5877ab12720","responseTime":47,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"948737b0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b698dbb7dab10b3b5123deb86e638209"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94947e20-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddbebd60-449b-4982-8f26-1e9fbc17212b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.9598444} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.232899,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94947e20-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"94947e20-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94947e20-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling 200 11ms","method":"POST","requestID":"94947e20-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9496a100-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5760ea9e-c2b1-4d35-80d7-3a12e026e722","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138781.9740264} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.683414,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9496a100-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9496a100-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9496a100-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling 200 13ms","method":"POST","requestID":"9496a100-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c2aa725b4a8d2426299f2cfce888cffd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c2aa725b4a8d2426299f2cfce888cffd","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5"}}},"level":"info","message":"received a callback","requestID":"c2aa725b4a8d2426299f2cfce888cffd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"c2aa725b4a8d2426299f2cfce888cffd","responseTime":12,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"peerconnection":"1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"c2aa725b4a8d2426299f2cfce888cffd"} device-1 | {"data":{"peerconnection":"1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c3fdd6a2a35d81776a6f88537c9b5227","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c3fdd6a2a35d81776a6f88537c9b5227","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5"}}},"level":"info","message":"received a callback","requestID":"c3fdd6a2a35d81776a6f88537c9b5227"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"94a769e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec420b4b-fdc2-48d1-a9b4-3be5ed5c5672","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.0832956} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.488296,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94a769e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94a769e0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"94a769e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5 200 10ms","method":"GET","requestID":"94a769e0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"c3fdd6a2a35d81776a6f88537c9b5227","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"c3fdd6a2a35d81776a6f88537c9b5227"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94abd6b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"282a0d9e-1123-4eda-9499-de87aa0e8a9f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.1113172} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.148169,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94abd6b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94abd6b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94abd6b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling 200 9ms","method":"POST","requestID":"94abd6b0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94adab70-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g","level":"info","message":"auth send jwt","requestID":"085c25d718f112f1e68c1ad9f6049bea"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"085c25d718f112f1e68c1ad9f6049bea","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","requestID":"085c25d718f112f1e68c1ad9f6049bea"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00b0fa24-0d45-4d44-bb79-4679f299e593","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.124207} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.275837,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94adab70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"94adab70-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.598591,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"085c25d718f112f1e68c1ad9f6049bea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138782,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"085c25d718f112f1e68c1ad9f6049bea","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94adab70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling 200 10ms","method":"POST","requestID":"94adab70-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","requestID":"085c25d718f112f1e68c1ad9f6049bea"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"085c25d718f112f1e68c1ad9f6049bea"} experiment-1 | {"level":"info","message":"GET /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a 200 17ms","method":"GET","requestID":"085c25d718f112f1e68c1ad9f6049bea","responseTime":17,"status":200,"url":"/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g","level":"info","message":"auth send jwt","requestID":"9eddbe9831881a3c798c986932f76b41"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9eddbe9831881a3c798c986932f76b41","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","requestID":"9eddbe9831881a3c798c986932f76b41"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.823191,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9eddbe9831881a3c798c986932f76b41","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138782,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9eddbe9831881a3c798c986932f76b41","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Attempting to finish experiment","requestID":"9eddbe9831881a3c798c986932f76b41"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"94b39ee0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.072523,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94b39ee0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138782,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94b39ee0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eb5f0070dfd2516e7dcb0b5fa6f5a4ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eb5f0070dfd2516e7dcb0b5fa6f5a4ec","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89c26575b343bb02bf028554843392a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5"}}},"level":"info","message":"received a callback","requestID":"eb5f0070dfd2516e7dcb0b5fa6f5a4ec"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"89c26575b343bb02bf028554843392a5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5"}}},"level":"info","message":"received a callback","requestID":"89c26575b343bb02bf028554843392a5"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"4696e87b-a5b1-44f1-8b12-deda06b0cacd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.1848962} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5855a9b3-1e89-4813-9595-c2765d21edcd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.1851606} device-1 | {"data":{"peerconnection":"1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"94b39ee0-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"94b39ee0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5 204 35ms","method":"DELETE","requestID":"94b39ee0-437c-11ef-8659-f5877ab12720","responseTime":35,"status":204,"url":"/peerconnections/1434e197-0a87-4a1a-bf7e-bb8ea84cd0b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"},"level":"info","message":"Successfully finished experiment","requestID":"9eddbe9831881a3c798c986932f76b41"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94bc0350-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F13ebe746-cfa3-4dec-aaa3-f898dc2d0738","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ad15fc7-a193-47b3-9c9a-39218ab66c27","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.2225647} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.788918,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94bc0350-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"94bc0350-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94bc0350-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling 200 15ms","method":"POST","requestID":"94bc0350-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"94be9b60-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7372b4-bc6a-4c19-8e42-9173f033984a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5e7372b4-bc6a-4c19-8e42-9173f033984a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"faed2ae2-7f8c-451c-9795-ae721c2925ba","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.2324257} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf962b2b-2f5f-4804-ba14-584f8720a032","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.232702} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"9eddbe9831881a3c798c986932f76b41","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa02ca0c0-f69b-43ae-a354-76c71aa5e181","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43cef71b-033f-463b-b41e-661c9f10b8f6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.2360044} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.634939,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94be9b60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"94be9b60-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"94be9b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling 200 11ms","method":"POST","requestID":"94be9b60-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a","requestID":"9eddbe9831881a3c798c986932f76b41"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9eddbe9831881a3c798c986932f76b41"} experiment-1 | {"level":"info","message":"DELETE /experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a 204 162ms","method":"DELETE","requestID":"9eddbe9831881a3c798c986932f76b41","responseTime":162,"status":204,"url":"/experiments/5e7372b4-bc6a-4c19-8e42-9173f033984a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"eb5f0070dfd2516e7dcb0b5fa6f5a4ec","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"eb5f0070dfd2516e7dcb0b5fa6f5a4ec"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"89c26575b343bb02bf028554843392a5","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"89c26575b343bb02bf028554843392a5"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2312","request_time":"0.928","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bd6b74ff300d9021bcb53bd8176f07db"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g","level":"info","message":"auth send jwt","requestID":"1b46f1aae9eeb7c7ab8d861482fea041"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2311","request_time":"0.932","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"85e94148f0a7f9601f735d33a2d27a5c"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"1b46f1aae9eeb7c7ab8d861482fea041","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1b46f1aae9eeb7c7ab8d861482fea041"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.706727,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"1b46f1aae9eeb7c7ab8d861482fea041","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138782,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b46f1aae9eeb7c7ab8d861482fea041","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/13ebe746-cfa3-4dec-aaa3-f898dc2d0738' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a02ca0c0-f69b-43ae-a354-76c71aa5e181' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d4b0de80-9155-47f3-82e6-eac2556bf348","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.3421314} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b46f1aae9eeb7c7ab8d861482fea041","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aafa1221-1deb-4189-94ff-cfda31fc7e97","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.347701} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1b46f1aae9eeb7c7ab8d861482fea041","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"9d298cc6-9970-4743-91a1-0ddcca212ca7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.3586755} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80b4bc67-6341-41ed-a378-f4b2177286c5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.3589208} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1b46f1aae9eeb7c7ab8d861482fea041","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.358653786Z"}]},"request_id":"9085a8fd-1ed4-4ee7-ac93-d7ca0546c4ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.3639045} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1b46f1aae9eeb7c7ab8d861482fea041","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1b46f1aae9eeb7c7ab8d861482fea041"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b46f1aae9eeb7c7ab8d861482fea041"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"1b46f1aae9eeb7c7ab8d861482fea041","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g","level":"info","message":"auth send jwt","requestID":"243348dfc712f91f70eb5a03fdbf53dd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"243348dfc712f91f70eb5a03fdbf53dd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"243348dfc712f91f70eb5a03fdbf53dd"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.830505,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"243348dfc712f91f70eb5a03fdbf53dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138782,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Mn0.iCOdhiw83tN70y1oNA0E_EVW2b7GXS5msRgc2MlHK0g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"243348dfc712f91f70eb5a03fdbf53dd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"701a94b4-7108-4a32-befa-201d1110def8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.3949122} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"243348dfc712f91f70eb5a03fdbf53dd","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c8eb519-025e-4414-8c3f-67d7cdb62ca9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.4007928} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"243348dfc712f91f70eb5a03fdbf53dd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"042e53fe-9569-4e1b-8ea9-0b0a9a60b43a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.4116096} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f61814f-0004-4a52-8dbb-5dd4e99694e3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.411981} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"243348dfc712f91f70eb5a03fdbf53dd","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.411585713Z"}]},"request_id":"251cd503-cbc7-40ba-a694-9720c47b83f9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138782.4167902} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"243348dfc712f91f70eb5a03fdbf53dd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"243348dfc712f91f70eb5a03fdbf53dd"} gateway-1 | {"time_local":"16/Jul/2024:14:06:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"243348dfc712f91f70eb5a03fdbf53dd"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"243348dfc712f91f70eb5a03fdbf53dd","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4M30.JjL0N_ZL-YrZl_hC84iAQYsKmyPLoGgcErrD41j19Bg","level":"info","message":"auth send jwt","requestID":"baf637ff5c732ba78ad8a0657abe9ced"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"baf637ff5c732ba78ad8a0657abe9ced","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"baf637ff5c732ba78ad8a0657abe9ced"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.411831,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"baf637ff5c732ba78ad8a0657abe9ced","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138783,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4M30.JjL0N_ZL-YrZl_hC84iAQYsKmyPLoGgcErrD41j19Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"baf637ff5c732ba78ad8a0657abe9ced","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.411585713Z"}]},"request_id":"b9ab8e9b-4ffa-44ca-a0e7-07295528fe1e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138783.0330622} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"baf637ff5c732ba78ad8a0657abe9ced","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"596d0efe-9156-428e-8115-052c5862302e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138783.0421417} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"baf637ff5c732ba78ad8a0657abe9ced","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.411585713Z"}]},"request_id":"bdd13c0d-c2a1-486e-ac96-1e5afffe8489","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138783.0667005} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"baf637ff5c732ba78ad8a0657abe9ced","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"baf637ff5c732ba78ad8a0657abe9ced"} device-1 | {"level":"info","message":"PATCH /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0 200 74ms","method":"PATCH","requestID":"baf637ff5c732ba78ad8a0657abe9ced","responseTime":74,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0"} gateway-1 | {"time_local":"16/Jul/2024:14:06:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.079","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"baf637ff5c732ba78ad8a0657abe9ced"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4M30.JjL0N_ZL-YrZl_hC84iAQYsKmyPLoGgcErrD41j19Bg","level":"info","message":"auth send jwt","requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.378147,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138783,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4M30.JjL0N_ZL-YrZl_hC84iAQYsKmyPLoGgcErrD41j19Bg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f"} gateway-1 | {"time_local":"16/Jul/2024:14:06:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f"} device-1 | {"level":"info","message":"POST /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/websocket 200 22ms","method":"POST","requestID":"5dbdd40b65ea12fcc4ec2e521fe9b57f","responseTime":22,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"50c15c09b7cb01e65c5e0eddcccb23bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"50c15c09b7cb01e65c5e0eddcccb23bb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e8ac2189-7938-4386-b383-019eccba490a/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"50c15c09b7cb01e65c5e0eddcccb23bb"} device-1 | {"level":"info","message":"OPTIONS /devices/e8ac2189-7938-4386-b383-019eccba490a/websocket 200 2ms","method":"OPTIONS","requestID":"50c15c09b7cb01e65c5e0eddcccb23bb","responseTime":2,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI","level":"info","message":"auth send jwt","requestID":"851c027c3044691d10c75749dca74be2"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"851c027c3044691d10c75749dca74be2","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"851c027c3044691d10c75749dca74be2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.493265,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"851c027c3044691d10c75749dca74be2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"851c027c3044691d10c75749dca74be2","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"851c027c3044691d10c75749dca74be2"} gateway-1 | {"time_local":"16/Jul/2024:14:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e8ac2189-7938-4386-b383-019eccba490a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"851c027c3044691d10c75749dca74be2"} device-1 | {"level":"info","message":"POST /devices/e8ac2189-7938-4386-b383-019eccba490a/websocket 200 29ms","method":"POST","requestID":"851c027c3044691d10c75749dca74be2","responseTime":29,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI","level":"info","message":"auth send jwt","requestID":"e95a0966d0829bf2ac40c19aa212bc39"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e95a0966d0829bf2ac40c19aa212bc39","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e95a0966d0829bf2ac40c19aa212bc39"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216187,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e95a0966d0829bf2ac40c19aa212bc39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e95a0966d0829bf2ac40c19aa212bc39","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.358653786Z"}]},"request_id":"ad344350-dffe-4ee5-8c20-0402cd0577e2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.4825757} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e95a0966d0829bf2ac40c19aa212bc39","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e95a0966d0829bf2ac40c19aa212bc39"} gateway-1 | {"time_local":"16/Jul/2024:14:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8ac2189-7938-4386-b383-019eccba490a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e95a0966d0829bf2ac40c19aa212bc39"} device-1 | {"level":"info","message":"GET /devices/e8ac2189-7938-4386-b383-019eccba490a? 200 20ms","method":"GET","requestID":"e95a0966d0829bf2ac40c19aa212bc39","responseTime":20,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI","level":"info","message":"auth send jwt","requestID":"63a78592e3b37821a08d2e25461140d3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"63a78592e3b37821a08d2e25461140d3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63a78592e3b37821a08d2e25461140d3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.277922,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"63a78592e3b37821a08d2e25461140d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"63a78592e3b37821a08d2e25461140d3","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.411585713Z"}]},"request_id":"5b0c359d-9851-4cd2-9ba6-a3526a379d83","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.5127206} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"63a78592e3b37821a08d2e25461140d3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63a78592e3b37821a08d2e25461140d3"} gateway-1 | {"time_local":"16/Jul/2024:14:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"63a78592e3b37821a08d2e25461140d3"} device-1 | {"level":"info","message":"GET /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0? 200 20ms","method":"GET","requestID":"63a78592e3b37821a08d2e25461140d3","responseTime":20,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI","level":"info","message":"auth send jwt","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8b0f2313a34a3feb4035e7895d606c1a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.212147,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"8b0f2313a34a3feb4035e7895d606c1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8b0f2313a34a3feb4035e7895d606c1a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Attempting to run experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Attempting to book experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully booked experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"96257e60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9625cc80-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.873109,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"96257e60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"96257e60-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.973557,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9625cc80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9625cc80-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.358653786Z"}]},"request_id":"01c09606-016c-4ef2-aed1-7ca1af50d400","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.5956025} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"96257e60-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.411585713Z"}]},"request_id":"20b57ecb-2cc2-48b5-819f-1c19186772c7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.5983398} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9625cc80-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"96257e60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/e8ac2189-7938-4386-b383-019eccba490a? 200 22ms","method":"GET","requestID":"96257e60-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9625cc80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0? 200 22ms","method":"GET","requestID":"9625cc80-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Setting up experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully set up experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"962ecd30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"962ef440-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"962f4260-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully running experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629192,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"962ecd30-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"962ecd30-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634507,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"962ef440-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"962ef440-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.358653786Z"}]},"request_id":"09a96bd9-a1dc-4b0a-af34-9c5d44fe0345","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.655716} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"962ecd30-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.411585713Z"}]},"request_id":"59b1d5ca-d135-458b-9bdb-adf613cd31e4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.657818} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bea0ea95-e4cb-4b7b-9500-5817825fc4bf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.6584427} authorization-1 | {"client_addr":"127.0.0.1:60054","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"962ef440-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60054","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.271002,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"962f4260-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"962f4260-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"962ecd30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/e8ac2189-7938-4386-b383-019eccba490a? 200 20ms","method":"GET","requestID":"962ecd30-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"962ef440-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0? 200 20ms","method":"GET","requestID":"962ef440-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"962f4260-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e8ac2189-7938-4386-b383-019eccba490a/signaling 200 20ms","method":"POST","requestID":"962f4260-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa61ffd33-04ae-450b-b235-cfcf349237d3#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa61ffd33-04ae-450b-b235-cfcf349237d3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"3130c26a-39a0-4ddb-95c6-7cda4a871579","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.667812} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79f33c53-5aa0-4ba6-a945-a151c6e5e404","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.6679726} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96329dc0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"8b0f2313a34a3feb4035e7895d606c1a","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"963312f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2cbea081-1626-438a-958e-5557e6e926ce","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.6744118} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.248369,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"96329dc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96329dc0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20dd915b-9929-46d5-a7be-0d602f3c2b08","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.6763413} authorization-1 | {"client_addr":"127.0.0.1:51746","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.533723,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"963312f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"963312f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} gateway-1 | {"time_local":"16/Jul/2024:14:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96329dc0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"8b0f2313a34a3feb4035e7895d606c1a","responseTime":148,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/e8ac2189-7938-4386-b383-019eccba490a/signaling 200 12ms","method":"POST","requestID":"96329dc0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"963312f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling 200 11ms","method":"POST","requestID":"963312f0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9634e7b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80201b99-4578-49d4-83bc-143e08fee5fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.687791} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254159,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI","level":"info","message":"auth send jwt","requestID":"18d641a433f2b9498c5ee5f3ec1eee57"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9634e7b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"18d641a433f2b9498c5ee5f3ec1eee57","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9634e7b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"18d641a433f2b9498c5ee5f3ec1eee57"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.864651,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9634e7b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling 200 10ms","method":"POST","requestID":"9634e7b0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"18d641a433f2b9498c5ee5f3ec1eee57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"18d641a433f2b9498c5ee5f3ec1eee57","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Building connection plan","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"1e5aec27-0e0d-4365-87b8-36f5213235f0"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"89d05c30-2d6a-4d98-9a5d-1774c9fd3648"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"0b2c1707-eb1a-4726-a198-3e8444b854aa"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9636e380-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.358653786Z"}]},"request_id":"7c4806c2-0a1a-4fed-8bf2-db02fbfa37b4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.6976914} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18d641a433f2b9498c5ee5f3ec1eee57","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.649657,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"18d641a433f2b9498c5ee5f3ec1eee57"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9636e380-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9636e380-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"16/Jul/2024:14:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8ac2189-7938-4386-b383-019eccba490a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"18d641a433f2b9498c5ee5f3ec1eee57"} device-1 | {"level":"info","message":"GET /devices/e8ac2189-7938-4386-b383-019eccba490a? 200 13ms","method":"GET","requestID":"18d641a433f2b9498c5ee5f3ec1eee57","responseTime":13,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI","level":"info","message":"auth send jwt","requestID":"4eeb65fcb160804ee5a3d41f85788152"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4eeb65fcb160804ee5a3d41f85788152","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4eeb65fcb160804ee5a3d41f85788152"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.923776,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4eeb65fcb160804ee5a3d41f85788152","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138784,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4NH0.h-Q94YELv59nMrS9FY_0FhrMSLCBK-vhJO-t9wFaTyI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4eeb65fcb160804ee5a3d41f85788152","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"78e3e19b-3656-4a23-8ac3-de6ab953b3fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.7132561} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f060f415-2742-4c59-8451-47d87e770632","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.713477} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"9636e380-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:22.411585713Z"}]},"request_id":"a5a4ea02-d07c-4ce0-a147-85c040f2f08a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.7176821} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4eeb65fcb160804ee5a3d41f85788152","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9636e380-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9636e380-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e'","requestID":"9636e380-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e'","requestID":"9636e380-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9636e380-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"9636e380-437c-11ef-8659-f5877ab12720","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4eeb65fcb160804ee5a3d41f85788152"} gateway-1 | {"time_local":"16/Jul/2024:14:06:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4eeb65fcb160804ee5a3d41f85788152"} device-1 | {"level":"info","message":"GET /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0? 200 23ms","method":"GET","requestID":"4eeb65fcb160804ee5a3d41f85788152","responseTime":23,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"9636e380-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8b0f2313a34a3feb4035e7895d606c1a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9640ce90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3b4f755-0298-4cf4-9cfd-e74eb434eb8a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.767085} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.680822,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9640ce90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9640ce90-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9640ce90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e8ac2189-7938-4386-b383-019eccba490a/signaling 200 12ms","method":"POST","requestID":"9640ce90-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96431880-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c305983-0943-46e4-9b5c-1aec26e7351e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138784.780607} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.170164,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"96431880-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96431880-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96431880-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling 200 9ms","method":"POST","requestID":"96431880-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling"} device-1 | {"data":{"peerconnection":"eb086fd1-1d66-462b-97c0-6e5c0a497f7e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"eb086fd1-1d66-462b-97c0-6e5c0a497f7e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cffb93f6761a2124df22746f4300880b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cffb93f6761a2124df22746f4300880b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e"}}},"level":"info","message":"received a callback","requestID":"cffb93f6761a2124df22746f4300880b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"cffb93f6761a2124df22746f4300880b","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"cffb93f6761a2124df22746f4300880b"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a'"} device-1 | {"data":{"peerconnection":"eb086fd1-1d66-462b-97c0-6e5c0a497f7e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"eb086fd1-1d66-462b-97c0-6e5c0a497f7e","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"eb086fd1-1d66-462b-97c0-6e5c0a497f7e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d1e0a71a426c07ba50fb7bd01e19a131","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d1e0a71a426c07ba50fb7bd01e19a131","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e"}}},"level":"info","message":"received a callback","requestID":"d1e0a71a426c07ba50fb7bd01e19a131"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"978360b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Feb086fd1-1d66-462b-97c0-6e5c0a497f7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"148ed738-9c13-46fd-955e-caeb6198fa02","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138786.8812728} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.109781,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"978360b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"978360b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"978360b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e 200 11ms","method":"GET","requestID":"978360b0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"d1e0a71a426c07ba50fb7bd01e19a131","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"d1e0a71a426c07ba50fb7bd01e19a131"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"978890d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6e22fa1-57d3-4029-ba89-43aea94590da","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138786.914881} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.017885,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"978890d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"978890d0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"978890d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling 200 11ms","method":"POST","requestID":"978890d0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"978adac0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e10a86c-802c-4b38-81c8-4c69d993dbc7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138786.9305456} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.415647,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"978adac0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"978adac0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"978adac0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e8ac2189-7938-4386-b383-019eccba490a/signaling 200 12ms","method":"POST","requestID":"978adac0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Nn0.TfVFWsEWnB8IgXImxVS2hRS45DxmKjjlo6Rh-CeQvTk","level":"info","message":"auth send jwt","requestID":"1714e22efa75560e6f3b598bbcda4070"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1714e22efa75560e6f3b598bbcda4070","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","requestID":"1714e22efa75560e6f3b598bbcda4070"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.109648,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"1714e22efa75560e6f3b598bbcda4070","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138786,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Nn0.TfVFWsEWnB8IgXImxVS2hRS45DxmKjjlo6Rh-CeQvTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1714e22efa75560e6f3b598bbcda4070","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","requestID":"1714e22efa75560e6f3b598bbcda4070"} gateway-1 | {"time_local":"16/Jul/2024:14:06:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1714e22efa75560e6f3b598bbcda4070"} experiment-1 | {"level":"info","message":"GET /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3 200 20ms","method":"GET","requestID":"1714e22efa75560e6f3b598bbcda4070","responseTime":20,"status":200,"url":"/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Nn0.TfVFWsEWnB8IgXImxVS2hRS45DxmKjjlo6Rh-CeQvTk","level":"info","message":"auth send jwt","requestID":"d69e78f6c64db8acf06701a4a2a568f4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d69e78f6c64db8acf06701a4a2a568f4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","requestID":"d69e78f6c64db8acf06701a4a2a568f4"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.339207,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d69e78f6c64db8acf06701a4a2a568f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138786,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Nn0.TfVFWsEWnB8IgXImxVS2hRS45DxmKjjlo6Rh-CeQvTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d69e78f6c64db8acf06701a4a2a568f4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Attempting to finish experiment","requestID":"d69e78f6c64db8acf06701a4a2a568f4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"97969a90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.681163,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"97969a90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138786,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4Nn0.TfVFWsEWnB8IgXImxVS2hRS45DxmKjjlo6Rh-CeQvTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97969a90-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"eb086fd1-1d66-462b-97c0-6e5c0a497f7e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6f84d7debbf6efb4065af4431ca49c00","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6f84d7debbf6efb4065af4431ca49c00","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Feb086fd1-1d66-462b-97c0-6e5c0a497f7e': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Feb086fd1-1d66-462b-97c0-6e5c0a497f7e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"a15fd0cf-6d3d-4d57-b845-7c66d11ed960","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.0256422} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83d76046-efb9-45da-a270-af1dc4c20dc2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.0260649} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"67eef8170f14005205f89db919a92f18","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e"}}},"level":"info","message":"received a callback","requestID":"6f84d7debbf6efb4065af4431ca49c00"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"67eef8170f14005205f89db919a92f18","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"97969a90-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e"}}},"level":"info","message":"received a callback","requestID":"67eef8170f14005205f89db919a92f18"} device-1 | {"data":{"peerconnection":"eb086fd1-1d66-462b-97c0-6e5c0a497f7e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"97969a90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e 204 44ms","method":"DELETE","requestID":"97969a90-437c-11ef-8659-f5877ab12720","responseTime":44,"status":204,"url":"/peerconnections/eb086fd1-1d66-462b-97c0-6e5c0a497f7e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"},"level":"info","message":"Successfully finished experiment","requestID":"d69e78f6c64db8acf06701a4a2a568f4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97a0fad0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F828194e9-e33a-4da5-ad25-0c6aff8a35b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d5e997db-ecbf-4f1f-9e53-a64abd7ff047","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.0748346} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.138902,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"97a0fad0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"97a0fad0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97a0fad0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling 200 13ms","method":"POST","requestID":"97a0fad0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"97a392e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa61ffd33-04ae-450b-b235-cfcf349237d3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa61ffd33-04ae-450b-b235-cfcf349237d3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"00960933-4544-4b8a-9431-404e4651d086","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.090077} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b961fceb-cd20-453a-b38d-74fe23c4099b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.0909693} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"d69e78f6c64db8acf06701a4a2a568f4","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8ac2189-7938-4386-b383-019eccba490a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64275d26-b93a-400c-8405-84c2f8857c3f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.0930605} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.891479,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"97a392e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"97a392e0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"97a392e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e8ac2189-7938-4386-b383-019eccba490a/signaling 200 13ms","method":"POST","requestID":"97a392e0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/e8ac2189-7938-4386-b383-019eccba490a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3","requestID":"d69e78f6c64db8acf06701a4a2a568f4"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d69e78f6c64db8acf06701a4a2a568f4"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2991","request_time":"4.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fa212ef8610768fe5d92f033af82b66c"} experiment-1 | {"level":"info","message":"DELETE /experiments/a61ffd33-04ae-450b-b235-cfcf349237d3 204 181ms","method":"DELETE","requestID":"d69e78f6c64db8acf06701a4a2a568f4","responseTime":181,"status":204,"url":"/experiments/a61ffd33-04ae-450b-b235-cfcf349237d3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"6f84d7debbf6efb4065af4431ca49c00","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"6f84d7debbf6efb4065af4431ca49c00"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"67eef8170f14005205f89db919a92f18","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"67eef8170f14005205f89db919a92f18"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I","level":"info","message":"auth send jwt","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","responseTime":6,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"2.730","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6be343a383ae0e1507f28b43c73234bc"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.965313,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138787,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevices called","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/828194e9-e33a-4da5-ad25-0c6aff8a35b0' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e8ac2189-7938-4386-b383-019eccba490a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"42162b72-23b2-4028-8afe-cd922b7c9657","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2002394} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"301e4588-1c60-465c-9a51-f088597b4c7c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2060528} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"6471be81-8114-4464-b4db-d311ab197e92","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2204208} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ac729ba-8053-43f4-9b45-af637fddd201","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2206998} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.220409350Z"}]},"request_id":"c4adbddd-203d-4e94-b7cd-f9dbf4195cb8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.225825} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"3d2350130fe3c463d1d6d6fd43bbcad5","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I","level":"info","message":"auth send jwt","requestID":"9d7382eaa9dfdb862813cbd9b480670d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9d7382eaa9dfdb862813cbd9b480670d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9d7382eaa9dfdb862813cbd9b480670d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.852272,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9d7382eaa9dfdb862813cbd9b480670d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138787,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d7382eaa9dfdb862813cbd9b480670d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"59ea387f-8c4e-4af2-81c8-2e0990e5e892","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2520444} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d7382eaa9dfdb862813cbd9b480670d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e8e4b6b-46e3-44c5-bc01-59938c7ecdd9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2573817} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9d7382eaa9dfdb862813cbd9b480670d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"70db5bc7-246c-410e-bf23-8b650643b3f0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.266658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81e1382a-6908-4640-93b3-0986b7d88c8b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2667873} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"9d7382eaa9dfdb862813cbd9b480670d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.266643439Z"}]},"request_id":"1a19f040-eb1c-49ac-9c01-43822975388e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.2712543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d7382eaa9dfdb862813cbd9b480670d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9d7382eaa9dfdb862813cbd9b480670d"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d7382eaa9dfdb862813cbd9b480670d"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"9d7382eaa9dfdb862813cbd9b480670d","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I","level":"info","message":"auth send jwt","requestID":"d11ea74e41f3480766561468d84984db"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d11ea74e41f3480766561468d84984db","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d11ea74e41f3480766561468d84984db"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141408,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d11ea74e41f3480766561468d84984db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138787,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d11ea74e41f3480766561468d84984db","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.220409350Z"}]},"request_id":"710a3417-e432-49eb-8773-d66fbc42e278","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.779369} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d11ea74e41f3480766561468d84984db","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35cbec28-6431-4b47-ac8f-c670127e42ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.7871468} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d11ea74e41f3480766561468d84984db","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.220409350Z"}]},"request_id":"19b84add-6443-417b-87f2-427401acd04f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138787.800729} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d11ea74e41f3480766561468d84984db","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d11ea74e41f3480766561468d84984db"} device-1 | {"level":"info","message":"PATCH /devices/9a21f85e-2504-4059-96ac-a0e20834ec61 200 40ms","method":"PATCH","requestID":"d11ea74e41f3480766561468d84984db","responseTime":40,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9a21f85e-2504-4059-96ac-a0e20834ec61 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d11ea74e41f3480766561468d84984db"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I","level":"info","message":"auth send jwt","requestID":"3f2b8bba650c7676a935bf7acbed1f75"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3f2b8bba650c7676a935bf7acbed1f75","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3f2b8bba650c7676a935bf7acbed1f75"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.496328,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3f2b8bba650c7676a935bf7acbed1f75","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138787,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4N30.Uf1nTfPOACx_VtN5fwFZHfVH0G7KIczJ2gGhbGNUn1I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3f2b8bba650c7676a935bf7acbed1f75","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3f2b8bba650c7676a935bf7acbed1f75"} device-1 | {"level":"info","message":"POST /devices/9a21f85e-2504-4059-96ac-a0e20834ec61/websocket 200 22ms","method":"POST","requestID":"3f2b8bba650c7676a935bf7acbed1f75","responseTime":22,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:06:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9a21f85e-2504-4059-96ac-a0e20834ec61/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"3f2b8bba650c7676a935bf7acbed1f75"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6d3953d5e1fa361b3dd0eb0fa66ab7a0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6d3953d5e1fa361b3dd0eb0fa66ab7a0","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1b181f68-f73f-4473-a1d1-908263df6847/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6d3953d5e1fa361b3dd0eb0fa66ab7a0"} device-1 | {"level":"info","message":"OPTIONS /devices/1b181f68-f73f-4473-a1d1-908263df6847/websocket 200 1ms","method":"OPTIONS","requestID":"6d3953d5e1fa361b3dd0eb0fa66ab7a0","responseTime":1,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI","level":"info","message":"auth send jwt","requestID":"bcc8a05e1caa87be19bf375dd5c50af3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bcc8a05e1caa87be19bf375dd5c50af3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bcc8a05e1caa87be19bf375dd5c50af3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.504204,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bcc8a05e1caa87be19bf375dd5c50af3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bcc8a05e1caa87be19bf375dd5c50af3","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bcc8a05e1caa87be19bf375dd5c50af3"} gateway-1 | {"time_local":"16/Jul/2024:14:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1b181f68-f73f-4473-a1d1-908263df6847/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bcc8a05e1caa87be19bf375dd5c50af3"} device-1 | {"level":"info","message":"POST /devices/1b181f68-f73f-4473-a1d1-908263df6847/websocket 200 22ms","method":"POST","requestID":"bcc8a05e1caa87be19bf375dd5c50af3","responseTime":22,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI","level":"info","message":"auth send jwt","requestID":"bf784cd77eb2c2519adc875d283f3b85"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"bf784cd77eb2c2519adc875d283f3b85","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bf784cd77eb2c2519adc875d283f3b85"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233642,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bf784cd77eb2c2519adc875d283f3b85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf784cd77eb2c2519adc875d283f3b85","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.220409350Z"}]},"request_id":"20cdcbca-3ef4-4dce-b6ed-992e48d130ea","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.3450305} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bf784cd77eb2c2519adc875d283f3b85","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bf784cd77eb2c2519adc875d283f3b85"} device-1 | {"level":"info","message":"GET /devices/9a21f85e-2504-4059-96ac-a0e20834ec61? 200 20ms","method":"GET","requestID":"bf784cd77eb2c2519adc875d283f3b85","responseTime":20,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9a21f85e-2504-4059-96ac-a0e20834ec61? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf784cd77eb2c2519adc875d283f3b85"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI","level":"info","message":"auth send jwt","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.123421,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6ff3bf554dd1eaeb2001f4f04ba78532","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.266643439Z"}]},"request_id":"0e61301a-4892-42cd-ac16-052640dda9fc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.3736405} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532"} gateway-1 | {"time_local":"16/Jul/2024:14:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1b181f68-f73f-4473-a1d1-908263df6847? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532"} device-1 | {"level":"info","message":"GET /devices/1b181f68-f73f-4473-a1d1-908263df6847? 200 18ms","method":"GET","requestID":"6ff3bf554dd1eaeb2001f4f04ba78532","responseTime":18,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI","level":"info","message":"auth send jwt","requestID":"27c5df36832957afad9c5dbd0e3380c0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"27c5df36832957afad9c5dbd0e3380c0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"27c5df36832957afad9c5dbd0e3380c0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.198542,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"27c5df36832957afad9c5dbd0e3380c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"27c5df36832957afad9c5dbd0e3380c0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Attempting to run experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Attempting to book experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully booked experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"990bd570-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"990c2390-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180559,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"990bd570-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"990bd570-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.423102,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"990c2390-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"990c2390-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.220409350Z"}]},"request_id":"8b65a41e-8b5a-40f2-bf44-a426e20f0378","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.4606886} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"990bd570-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.266643439Z"}]},"request_id":"0d0864ff-27cb-40d0-80e7-baf7e3f8e220","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.4671063} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"990bd570-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/9a21f85e-2504-4059-96ac-a0e20834ec61? 200 22ms","method":"GET","requestID":"990bd570-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"990c2390-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"990c2390-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/1b181f68-f73f-4473-a1d1-908263df6847? 200 23ms","method":"GET","requestID":"990c2390-437c-11ef-8659-f5877ab12720","responseTime":23,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Setting up experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully locked booking for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Attempting to update booking for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully updated booking for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully set up experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9919df30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"991a5460-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"991ac990-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247194,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9919df30-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9919df30-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.435739,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully running experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"991a5460-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"991a5460-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.220409350Z"}]},"request_id":"b35a24b9-c846-48ad-872c-bf24c0b99020","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.5582309} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.266643439Z"}]},"request_id":"ee95f7e4-3eb1-4da5-9164-54e9d6b6bb44","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.5613415} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"9919df30-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"991a5460-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2fcdceb-91f2-4e30-9b7e-b849d9e84c32","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.564173} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.447024,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"991ac990-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"991ac990-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9919df30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/9a21f85e-2504-4059-96ac-a0e20834ec61? 200 33ms","method":"GET","requestID":"9919df30-437c-11ef-8659-f5877ab12720","responseTime":33,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"991a5460-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/1b181f68-f73f-4473-a1d1-908263df6847? 200 32ms","method":"GET","requestID":"991a5460-437c-11ef-8659-f5877ab12720","responseTime":32,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"991ac990-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling 200 31ms","method":"POST","requestID":"991ac990-437c-11ef-8659-f5877ab12720","responseTime":31,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"991fd2a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1546ad0-2003-4b6e-baf0-3a6511c2b333#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1546ad0-2003-4b6e-baf0-3a6511c2b333","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"5cf529a9-ed02-4933-9b80-a7494b3c6302","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.580032} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6424be56-c008-4007-926a-fba57e558f68","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.5803092} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99206ee0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"27c5df36832957afad9c5dbd0e3380c0","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4224c19-b75d-4905-ba75-8a5f7592b2f1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.588342} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.405789,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"991fd2a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"991fd2a0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d511ce2-fc5d-46af-b2a3-738609ecbd0b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.5912426} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.292513,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"99206ee0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"99206ee0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"991fd2a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling 200 17ms","method":"POST","requestID":"991fd2a0-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"27c5df36832957afad9c5dbd0e3380c0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99206ee0-437c-11ef-8659-f5877ab12720"} gateway-1 | {"time_local":"16/Jul/2024:14:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.207","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"27c5df36832957afad9c5dbd0e3380c0","responseTime":199,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling 200 14ms","method":"POST","requestID":"99206ee0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"992306f0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI","level":"info","message":"auth send jwt","requestID":"c9080e41b91682628d76f9f2e15a3596"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c9080e41b91682628d76f9f2e15a3596","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9080e41b91682628d76f9f2e15a3596"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b34ed6a9-b5f0-4ca2-bb0a-769f281c25d8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.6051216} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.25322,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"992306f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"992306f0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"992306f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.547673,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} device-1 | {"level":"info","message":"POST /devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling 200 12ms","method":"POST","requestID":"992306f0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c9080e41b91682628d76f9f2e15a3596","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Building connection plan","requestID":"27c5df36832957afad9c5dbd0e3380c0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c9080e41b91682628d76f9f2e15a3596","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"9d55c7b9-f581-4747-b504-1aabc91e1f86"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"d35cc107-151d-4e5c-95eb-4a088eaa8dc5"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c3d67595-8f05-4478-8cb7-72b422c832d7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"27c5df36832957afad9c5dbd0e3380c0"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"27c5df36832957afad9c5dbd0e3380c0"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"992550e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.220409350Z"}]},"request_id":"ddb9591f-337a-430c-ac64-f0d31b9357f0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.6159177} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c9080e41b91682628d76f9f2e15a3596","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.717767,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"992550e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"992550e0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9080e41b91682628d76f9f2e15a3596"} gateway-1 | {"time_local":"16/Jul/2024:14:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9a21f85e-2504-4059-96ac-a0e20834ec61? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c9080e41b91682628d76f9f2e15a3596"} device-1 | {"level":"info","message":"GET /devices/9a21f85e-2504-4059-96ac-a0e20834ec61? 200 21ms","method":"GET","requestID":"c9080e41b91682628d76f9f2e15a3596","responseTime":21,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI","level":"info","message":"auth send jwt","requestID":"7995474195da9c7d24df13b7ff532fe0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7995474195da9c7d24df13b7ff532fe0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7995474195da9c7d24df13b7ff532fe0"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"18c132fc-66d3-43d1-bcab-709f8d1cbc21","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.6320431} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d192fe1-a297-4eb5-bff1-e1158fdee93f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.6322749} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"992550e0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784716,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7995474195da9c7d24df13b7ff532fe0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138789,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc4OX0.1I3zLgZaOhBq0riuJ6Unb8dh55HLvGdGPSBGsQMTUaI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7995474195da9c7d24df13b7ff532fe0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:27.266643439Z"}]},"request_id":"84c30e00-934e-4455-90d8-7f80f8a7e307","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.6409402} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7995474195da9c7d24df13b7ff532fe0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"992550e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"992550e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de'","requestID":"992550e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de'","requestID":"992550e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"992550e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 37ms","method":"POST","requestID":"992550e0-437c-11ef-8659-f5877ab12720","responseTime":37,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7995474195da9c7d24df13b7ff532fe0"} device-1 | {"level":"info","message":"GET /devices/1b181f68-f73f-4473-a1d1-908263df6847? 200 22ms","method":"GET","requestID":"7995474195da9c7d24df13b7ff532fe0","responseTime":22,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1b181f68-f73f-4473-a1d1-908263df6847? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7995474195da9c7d24df13b7ff532fe0"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"992550e0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"27c5df36832957afad9c5dbd0e3380c0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"992fb120-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"185286c4-19e5-4d10-aad6-339adfb869f2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.686872} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.473038,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"992fb120-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"992fb120-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"992fb120-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling 200 9ms","method":"POST","requestID":"992fb120-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"993185e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca6f16fd-aacf-4aec-9470-84908441d01c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138789.6992128} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.898692,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"993185e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"993185e0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"993185e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling 200 11ms","method":"POST","requestID":"993185e0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling"} device-1 | {"data":{"peerconnection":"b718b3a7-e4bd-436d-a5f3-2c44d0c995de","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b718b3a7-e4bd-436d-a5f3-2c44d0c995de","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"382de6b15b3546b5f14fddaf4b3b9ce6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"382de6b15b3546b5f14fddaf4b3b9ce6","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de"}}},"level":"info","message":"received a callback","requestID":"382de6b15b3546b5f14fddaf4b3b9ce6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"382de6b15b3546b5f14fddaf4b3b9ce6","responseTime":16,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch","requestID":"382de6b15b3546b5f14fddaf4b3b9ce6"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847'"} device-1 | {"data":{"peerconnection":"b718b3a7-e4bd-436d-a5f3-2c44d0c995de","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b718b3a7-e4bd-436d-a5f3-2c44d0c995de","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b718b3a7-e4bd-436d-a5f3-2c44d0c995de","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1c343775b92a569004ff62fdd600a9bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1c343775b92a569004ff62fdd600a9bf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de"}}},"level":"info","message":"received a callback","requestID":"1c343775b92a569004ff62fdd600a9bf"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9a730690-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb718b3a7-e4bd-436d-a5f3-2c44d0c995de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87f76d00-6d64-42ad-bc64-cb0f1b7f91ac","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138791.8090868} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.109088,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9a730690-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"9a730690-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9a730690-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de 200 14ms","method":"GET","requestID":"9a730690-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 52ms","method":"POST","requestID":"1c343775b92a569004ff62fdd600a9bf","responseTime":52,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch","requestID":"1c343775b92a569004ff62fdd600a9bf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9a79bd50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e374cf6-21b7-479b-bdca-3b638734937b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138791.851314} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.001672,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9a79bd50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9a79bd50-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9a79bd50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling 200 12ms","method":"POST","requestID":"9a79bd50-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9a7c0740-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e033b45-16ee-4723-9137-8e60fbd6e166","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138791.8659835} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.75757,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9a7c0740-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9a7c0740-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9a7c0740-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling 200 11ms","method":"POST","requestID":"9a7c0740-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5MX0.eF_0PdDjncheDompapbLWGJwezgq2G3eT5_ocwCY6D8","level":"info","message":"auth send jwt","requestID":"500cab0ebbeccd5b7d3917bcefdc75b1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"500cab0ebbeccd5b7d3917bcefdc75b1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","requestID":"500cab0ebbeccd5b7d3917bcefdc75b1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.853337,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"500cab0ebbeccd5b7d3917bcefdc75b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138791,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5MX0.eF_0PdDjncheDompapbLWGJwezgq2G3eT5_ocwCY6D8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"500cab0ebbeccd5b7d3917bcefdc75b1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","requestID":"500cab0ebbeccd5b7d3917bcefdc75b1"} gateway-1 | {"time_local":"16/Jul/2024:14:06:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"500cab0ebbeccd5b7d3917bcefdc75b1"} experiment-1 | {"level":"info","message":"GET /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333 200 17ms","method":"GET","requestID":"500cab0ebbeccd5b7d3917bcefdc75b1","responseTime":17,"status":200,"url":"/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5MX0.eF_0PdDjncheDompapbLWGJwezgq2G3eT5_ocwCY6D8","level":"info","message":"auth send jwt","requestID":"1cf15a92e27307274f33a881f2a6363a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1cf15a92e27307274f33a881f2a6363a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","requestID":"1cf15a92e27307274f33a881f2a6363a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.04592,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"1cf15a92e27307274f33a881f2a6363a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138791,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5MX0.eF_0PdDjncheDompapbLWGJwezgq2G3eT5_ocwCY6D8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1cf15a92e27307274f33a881f2a6363a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Attempting to finish experiment","requestID":"1cf15a92e27307274f33a881f2a6363a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9a855610-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.933637,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9a855610-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138791,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5MX0.eF_0PdDjncheDompapbLWGJwezgq2G3eT5_ocwCY6D8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a855610-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b718b3a7-e4bd-436d-a5f3-2c44d0c995de","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e2189935beb76804f0f315ad52776f5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3e2189935beb76804f0f315ad52776f5","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6fb9411b71b9d6261840ec40bf300d62","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6fb9411b71b9d6261840ec40bf300d62","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb718b3a7-e4bd-436d-a5f3-2c44d0c995de': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb718b3a7-e4bd-436d-a5f3-2c44d0c995de","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"b40cb115-30ea-443b-9ec5-e761d2a5a4aa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138791.9468586} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de"}}},"level":"info","message":"received a callback","requestID":"3e2189935beb76804f0f315ad52776f5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b656475-052d-4748-8c2a-67291dea8115","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138791.947557} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de"}}},"level":"info","message":"received a callback","requestID":"6fb9411b71b9d6261840ec40bf300d62"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"9a855610-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b718b3a7-e4bd-436d-a5f3-2c44d0c995de","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9a855610-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de 204 50ms","method":"DELETE","requestID":"9a855610-437c-11ef-8659-f5877ab12720","responseTime":50,"status":204,"url":"/peerconnections/b718b3a7-e4bd-436d-a5f3-2c44d0c995de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"},"level":"info","message":"Successfully finished experiment","requestID":"1cf15a92e27307274f33a881f2a6363a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9a90c7c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9a21f85e-2504-4059-96ac-a0e20834ec61","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0657066-b6df-422d-9afa-58b44dc8a31d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.0039291} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.892911,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9a90c7c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9a90c7c0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9a90c7c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling 200 14ms","method":"POST","requestID":"9a90c7c0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/9a21f85e-2504-4059-96ac-a0e20834ec61/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1546ad0-2003-4b6e-baf0-3a6511c2b333': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1546ad0-2003-4b6e-baf0-3a6511c2b333","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"27fad377-c3cf-4651-ba82-8726f007b660","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.0101683} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"251f74c0-04e6-4176-bd17-e30b65fc318c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.010548} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1cf15a92e27307274f33a881f2a6363a","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9a935fd0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b181f68-f73f-4473-a1d1-908263df6847","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac5dcfad-617c-47ee-b8f3-45f08b9362de","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.0208197} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.986378,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9a935fd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9a935fd0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9a935fd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling 200 14ms","method":"POST","requestID":"9a935fd0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/1b181f68-f73f-4473-a1d1-908263df6847/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333","requestID":"1cf15a92e27307274f33a881f2a6363a"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1cf15a92e27307274f33a881f2a6363a"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"4.248","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"81112158ed87361d46448b266caacbfc"} experiment-1 | {"level":"info","message":"DELETE /experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333 204 179ms","method":"DELETE","requestID":"1cf15a92e27307274f33a881f2a6363a","responseTime":179,"status":204,"url":"/experiments/b1546ad0-2003-4b6e-baf0-3a6511c2b333"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"3e2189935beb76804f0f315ad52776f5","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"3e2189935beb76804f0f315ad52776f5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"6fb9411b71b9d6261840ec40bf300d62","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"6fb9411b71b9d6261840ec40bf300d62"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"d9298f00fffe9c97f08ceffedc786a9a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d9298f00fffe9c97f08ceffedc786a9a","responseTime":6,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"2.789","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e0cf54e8032f66d4b11280ec91b655bc"} device-1 | {"level":"info","message":"postDevices called","requestID":"d9298f00fffe9c97f08ceffedc786a9a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.906971,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d9298f00fffe9c97f08ceffedc786a9a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9a21f85e-2504-4059-96ac-a0e20834ec61' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d9298f00fffe9c97f08ceffedc786a9a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1b181f68-f73f-4473-a1d1-908263df6847' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23d04e79-36b7-43aa-a402-22fa852e9359","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.118185} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d9298f00fffe9c97f08ceffedc786a9a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e599e2e-a00b-4f07-99b5-0a48b6f1e915","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.1259615} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d9298f00fffe9c97f08ceffedc786a9a","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"42aaad91-684d-422a-9fe5-08c83384353d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.1389525} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26fdd4dc-9067-4861-97ac-90f87bdf06e7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.139161} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"d9298f00fffe9c97f08ceffedc786a9a","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.138938134Z"}]},"request_id":"42ad4f30-aed3-444c-b7a8-79a478f7de12","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.1458352} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9298f00fffe9c97f08ceffedc786a9a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d9298f00fffe9c97f08ceffedc786a9a"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d9298f00fffe9c97f08ceffedc786a9a"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"d9298f00fffe9c97f08ceffedc786a9a","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"45088cc34c99069766e5d7a4ad581020"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"45088cc34c99069766e5d7a4ad581020","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"45088cc34c99069766e5d7a4ad581020"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731107,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"45088cc34c99069766e5d7a4ad581020","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45088cc34c99069766e5d7a4ad581020","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6b563c06-59a2-430d-9b9a-59c68c62c23e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.1730146} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45088cc34c99069766e5d7a4ad581020","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29a0c64a-9937-43b2-be11-2cfd95bca8a0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.178633} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"45088cc34c99069766e5d7a4ad581020","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"65e46320-b6aa-4d63-91de-3a924b2cf528","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.1963043} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc753a92-9895-4d51-96a6-52b25ef63f03","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.1965723} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"45088cc34c99069766e5d7a4ad581020","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.196288119Z"}]},"request_id":"27f34ee6-5603-4eed-8af2-bd8b3d21b222","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.2039225} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45088cc34c99069766e5d7a4ad581020","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"45088cc34c99069766e5d7a4ad581020"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45088cc34c99069766e5d7a4ad581020"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"45088cc34c99069766e5d7a4ad581020","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"3e3f7ff013a2c8d94659c758764db141"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3e3f7ff013a2c8d94659c758764db141","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3e3f7ff013a2c8d94659c758764db141"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251397,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3e3f7ff013a2c8d94659c758764db141","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3e3f7ff013a2c8d94659c758764db141","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895016,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c9bc5ecb2a0db5e39deff241cb5793ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.196288119Z"}]},"request_id":"1c1994a9-eea4-47ec-a0af-4cd88dc425d4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.7167032} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3e3f7ff013a2c8d94659c758764db141","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.138938134Z"}]},"request_id":"35735753-a9da-4f2d-8a69-6111fbf64f4d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.7181084} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf9b4a44-6942-4c18-b507-8ba978d9dd87","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.7232895} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3e3f7ff013a2c8d94659c758764db141","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"003da840-372f-4a74-beee-f325caa44be3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.7246702} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.138938134Z"}]},"request_id":"c2181dee-1a03-4aa9-b4e7-1c8cb6290207","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.730095} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee"} device-1 | {"level":"info","message":"PATCH /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52 200 27ms","method":"PATCH","requestID":"c9bc5ecb2a0db5e39deff241cb5793ee","responseTime":27,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.196288119Z"}]},"request_id":"b675b701-0ef2-4df1-bc35-03002a2a101a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.7374182} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e3f7ff013a2c8d94659c758764db141","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3e3f7ff013a2c8d94659c758764db141"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"3e3f7ff013a2c8d94659c758764db141"} device-1 | {"level":"info","message":"PATCH /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6 200 38ms","method":"PATCH","requestID":"3e3f7ff013a2c8d94659c758764db141","responseTime":38,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.880449,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"465f90a03e132c52b3453a3f8c711bad"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"465f90a03e132c52b3453a3f8c711bad","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"465f90a03e132c52b3453a3f8c711bad"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78349,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"465f90a03e132c52b3453a3f8c711bad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"465f90a03e132c52b3453a3f8c711bad","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a"} device-1 | {"level":"info","message":"POST /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/websocket 200 21ms","method":"POST","requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a","responseTime":21,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e2f9f8e8ed5ccf686a7ff4ec7b9dc85a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"465f90a03e132c52b3453a3f8c711bad"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"465f90a03e132c52b3453a3f8c711bad"} device-1 | {"level":"info","message":"POST /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/websocket 200 24ms","method":"POST","requestID":"465f90a03e132c52b3453a3f8c711bad","responseTime":24,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"cac485568dcd560b290ef8757fa57230"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cac485568dcd560b290ef8757fa57230","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cac485568dcd560b290ef8757fa57230"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.827458,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cac485568dcd560b290ef8757fa57230","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cac485568dcd560b290ef8757fa57230","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.138938134Z"}]},"request_id":"a0c3a41a-5785-4c98-a97e-86ad7aa6a43f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.8133788} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cac485568dcd560b290ef8757fa57230","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cac485568dcd560b290ef8757fa57230"} device-1 | {"level":"info","message":"GET /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52? 200 15ms","method":"GET","requestID":"cac485568dcd560b290ef8757fa57230","responseTime":15,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cac485568dcd560b290ef8757fa57230"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"7b053fc24285c6c0494e64688d767b09"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b053fc24285c6c0494e64688d767b09","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b053fc24285c6c0494e64688d767b09"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.207643,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7b053fc24285c6c0494e64688d767b09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7b053fc24285c6c0494e64688d767b09","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.196288119Z"}]},"request_id":"d0c851a3-fa3c-432f-9309-83f6f4c7478c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.8380036} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7b053fc24285c6c0494e64688d767b09","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b053fc24285c6c0494e64688d767b09"} device-1 | {"level":"info","message":"GET /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6? 200 16ms","method":"GET","requestID":"7b053fc24285c6c0494e64688d767b09","responseTime":16,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b053fc24285c6c0494e64688d767b09"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0","level":"info","message":"auth send jwt","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c4cb98fb709484b4a6abb9359c6685ba","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.236552,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c4cb98fb709484b4a6abb9359c6685ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4cb98fb709484b4a6abb9359c6685ba","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Attempting to run experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Attempting to book experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully booked experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b1a1c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b1a6a20-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617478,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b1a1c00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9b1a1c00-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.087916,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b1a6a20-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9b1a6a20-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.138938134Z"}]},"request_id":"a9bad814-6cc9-477a-8f59-ed3d4486685d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.9100993} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9b1a1c00-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.196288119Z"}]},"request_id":"f5332d9e-b769-4feb-9898-2eb7c3062c02","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.9112227} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b1a6a20-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b1a1c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52? 200 20ms","method":"GET","requestID":"9b1a1c00-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b1a6a20-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6? 200 19ms","method":"GET","requestID":"9b1a6a20-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Setting up experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully set up experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b26ed40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b273b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b278980-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully running experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.782407,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b26ed40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"9b26ed40-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195419,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.1409,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f358691-20dc-4059-8940-17e8508c4ed0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138792.9940255} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b273b60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9b273b60-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b278980-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9b278980-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b278980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling 200 20ms","method":"POST","requestID":"9b278980-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.138938134Z"}]},"request_id":"75b7c20c-5949-4e24-8fa3-16f749360e33","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0022736} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9b26ed40-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.196288119Z"}]},"request_id":"65ad3ec4-c822-4993-89b6-42a0d1921138","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0052578} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b273b60-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b2b5a10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b26ed40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52? 200 34ms","method":"GET","requestID":"9b26ed40-437c-11ef-8659-f5877ab12720","responseTime":34,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b273b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6? 200 35ms","method":"GET","requestID":"9b273b60-437c-11ef-8659-f5877ab12720","responseTime":35,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b4e4cf2-66d7-44f5-80e0-c169b5b8a9a9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0152977} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbd9a74ac-101c-4298-9835-55a8cde39963#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbd9a74ac-101c-4298-9835-55a8cde39963","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"1c48572d-2d62-4cbc-9035-bd05e5c41ea3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0163462} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b2d07c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36f262a1-bd31-4e85-af4f-8d27e7074576","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.017874} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.213079,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b2b5a10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9b2b5a10-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b2b5a10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 34ms","method":"POST","requestID":"c4cb98fb709484b4a6abb9359c6685ba","responseTime":34,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling 200 16ms","method":"POST","requestID":"9b2b5a10-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0dff7922-c787-4965-b9f8-3259201a2031","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0285563} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.979894,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b2d07c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9b2d07c0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b2d07c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling 200 15ms","method":"POST","requestID":"9b2d07c0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"level":"info","message":"POST /experiments? 201 184ms","method":"POST","requestID":"c4cb98fb709484b4a6abb9359c6685ba","responseTime":184,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"815","request_time":"0.191","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b2fc6e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"267c539d-4071-469f-81fb-fd58f08528fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.049279} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.621601,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b2fc6e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9b2fc6e0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5M30.9ItKFf8_J0xDC3wHhCUnHptMUnQ-74ltCiuY_7GSRuY","level":"info","message":"auth send jwt","requestID":"79690deda88080b0fd22c9184635f217"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b2fc6e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling 200 17ms","method":"POST","requestID":"9b2fc6e0-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79690deda88080b0fd22c9184635f217","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79690deda88080b0fd22c9184635f217"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Building connection plan","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"dee387db-c66f-4d98-9ae3-81b6d444938d"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"30454dd7-6085-4360-a15d-737579d6bfb3"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b5f6327f-7dfa-481b-b1af-f5cade03d7a9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9b32d420-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691479,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"79690deda88080b0fd22c9184635f217","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138793,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5M30.9ItKFf8_J0xDC3wHhCUnHptMUnQ-74ltCiuY_7GSRuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79690deda88080b0fd22c9184635f217","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.645125,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b32d420-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138792,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Mn0.jYMmWBEYWhF8QkLR8YWHlnsjgdQOFGBQ6J11elywID0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9b32d420-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.138938134Z"}]},"request_id":"0690e88a-d89b-4924-affb-db09a503bef6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0628133} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"79690deda88080b0fd22c9184635f217","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79690deda88080b0fd22c9184635f217"} gateway-1 | {"time_local":"16/Jul/2024:14:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79690deda88080b0fd22c9184635f217"} device-1 | {"level":"info","message":"GET /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52? 200 13ms","method":"GET","requestID":"79690deda88080b0fd22c9184635f217","responseTime":13,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5M30.9ItKFf8_J0xDC3wHhCUnHptMUnQ-74ltCiuY_7GSRuY","level":"info","message":"auth send jwt","requestID":"1682ccbad22062c48c65add75e5a4dcd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1682ccbad22062c48c65add75e5a4dcd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1682ccbad22062c48c65add75e5a4dcd"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"bf7044ad-563b-4d62-ac54-82cc16f6f873","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0737295} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec8fb3ea-ff4b-4caa-9677-3975bde5f006","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0739555} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9b32d420-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.835165,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"1682ccbad22062c48c65add75e5a4dcd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138793,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5M30.9ItKFf8_J0xDC3wHhCUnHptMUnQ-74ltCiuY_7GSRuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1682ccbad22062c48c65add75e5a4dcd","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:32.196288119Z"}]},"request_id":"b7ec0257-f00c-4d91-adb1-b7c7fadc8eee","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.0822575} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1682ccbad22062c48c65add75e5a4dcd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9b32d420-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9b32d420-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2'","requestID":"9b32d420-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2'","requestID":"9b32d420-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9b32d420-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"9b32d420-437c-11ef-8659-f5877ab12720","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1682ccbad22062c48c65add75e5a4dcd"} gateway-1 | {"time_local":"16/Jul/2024:14:06:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1682ccbad22062c48c65add75e5a4dcd"} device-1 | {"level":"info","message":"GET /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6? 200 16ms","method":"GET","requestID":"1682ccbad22062c48c65add75e5a4dcd","responseTime":16,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"9b32d420-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c4cb98fb709484b4a6abb9359c6685ba"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b3badc0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b471c862-5cb3-4762-89f1-59ce64fdb29a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.1209779} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.301495,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b3badc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b3badc0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b3badc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling 200 9ms","method":"POST","requestID":"9b3badc0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b3d5b70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"753a37d2-6a81-4302-a87c-29733751334c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138793.1315544} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.068119,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b3d5b70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b3d5b70-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b3d5b70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling 200 8ms","method":"POST","requestID":"9b3d5b70-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c12cc2b4bc3f6e8c5de4bfaabfc327f7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c12cc2b4bc3f6e8c5de4bfaabfc327f7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2"}}},"level":"info","message":"received a callback","requestID":"c12cc2b4bc3f6e8c5de4bfaabfc327f7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"c12cc2b4bc3f6e8c5de4bfaabfc327f7","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"c12cc2b4bc3f6e8c5de4bfaabfc327f7"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af020e6f896bf87f2cc95993ee225262","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"af020e6f896bf87f2cc95993ee225262","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2"}}},"level":"info","message":"received a callback","requestID":"af020e6f896bf87f2cc95993ee225262"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9c7e66f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5774fd8-4f3a-4e9f-8c45-d31b61229555","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.2390852} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.827184,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9c7e66f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9c7e66f0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9c7e66f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2 200 15ms","method":"GET","requestID":"9c7e66f0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 53ms","method":"POST","requestID":"af020e6f896bf87f2cc95993ee225262","responseTime":53,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch","requestID":"af020e6f896bf87f2cc95993ee225262"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c84f6a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"2fd3416380d1d6c15c7a4780e99977dc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2fd3416380d1d6c15c7a4780e99977dc","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/bd9a74ac-101c-4298-9835-55a8cde39963","requestID":"2fd3416380d1d6c15c7a4780e99977dc"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3a3b3846-78c1-4752-a8ee-1d2a3dcdd480","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.282767} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.530208,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9c84f6a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"9c84f6a0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.783501,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c84f6a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling 200 18ms","method":"POST","requestID":"9c84f6a0-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2fd3416380d1d6c15c7a4780e99977dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2fd3416380d1d6c15c7a4780e99977dc","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c885200-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10a6851d-bcea-4317-af11-c59fe6b47004","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.3060567} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.764482,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/bd9a74ac-101c-4298-9835-55a8cde39963","requestID":"2fd3416380d1d6c15c7a4780e99977dc"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9c885200-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/bd9a74ac-101c-4298-9835-55a8cde39963 HTTP/1.1","status": "200","body_bytes_sent":"888","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fd3416380d1d6c15c7a4780e99977dc"} experiment-1 | {"level":"info","message":"GET /experiments/bd9a74ac-101c-4298-9835-55a8cde39963 200 28ms","method":"GET","requestID":"2fd3416380d1d6c15c7a4780e99977dc","responseTime":28,"status":200,"url":"/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9c885200-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c885200-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling 200 19ms","method":"POST","requestID":"9c885200-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"b9e7cacb4454e84fe07eb78e10f30984"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b9e7cacb4454e84fe07eb78e10f30984","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/bd9a74ac-101c-4298-9835-55a8cde39963","requestID":"b9e7cacb4454e84fe07eb78e10f30984"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.320072,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9e7cacb4454e84fe07eb78e10f30984","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b9e7cacb4454e84fe07eb78e10f30984","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Attempting to finish experiment","requestID":"b9e7cacb4454e84fe07eb78e10f30984"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9c8ee1b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.315066,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9c8ee1b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9c8ee1b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"98cdf3e677dc9f570a53a3460a967944","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42a1fcf5-0eab-43d1-b657-ee8cd5296bd2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"6c0cab11-fc13-4227-ae6d-0602c4ffa872","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.3663027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c9d4f94-8ab5-4f1c-8ccd-f2ce8cb1b40a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.3669713} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"98cdf3e677dc9f570a53a3460a967944","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a46c699d5e1a03b78b7df8471741ce5d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2"}}},"level":"info","message":"received a callback","requestID":"98cdf3e677dc9f570a53a3460a967944"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a46c699d5e1a03b78b7df8471741ce5d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"9c8ee1b0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2"}}},"level":"info","message":"received a callback","requestID":"a46c699d5e1a03b78b7df8471741ce5d"} device-1 | {"data":{"peerconnection":"42a1fcf5-0eab-43d1-b657-ee8cd5296bd2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9c8ee1b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2 204 50ms","method":"DELETE","requestID":"9c8ee1b0-437c-11ef-8659-f5877ab12720","responseTime":50,"status":204,"url":"/peerconnections/42a1fcf5-0eab-43d1-b657-ee8cd5296bd2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"},"level":"info","message":"Successfully finished experiment","requestID":"b9e7cacb4454e84fe07eb78e10f30984"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c9aefa0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F11c63bf2-b6fb-46cd-83d4-9a99f078eb52","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8baf9cb4-29c4-4d70-afa5-698f1a4404a0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.4255342} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.776396,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9c9aefa0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"9c9aefa0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c9aefa0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling 200 15ms","method":"POST","requestID":"9c9aefa0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbd9a74ac-101c-4298-9835-55a8cde39963': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbd9a74ac-101c-4298-9835-55a8cde39963","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"7cb7fadc-e1b1-43c6-8114-d143c53a8ea4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.4340777} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"904e5a57-e847-4bfa-a10e-889c1619d0a0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.4346688} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c9dfce0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"b9e7cacb4454e84fe07eb78e10f30984","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbe6eb528-8753-4a8c-aba4-63eb43b244c6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7737e08b-b212-4b70-ac95-2fd6e453bd07","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.4456923} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.037982,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9c9dfce0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9c9dfce0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c9dfce0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling 200 15ms","method":"POST","requestID":"9c9dfce0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/bd9a74ac-101c-4298-9835-55a8cde39963","requestID":"b9e7cacb4454e84fe07eb78e10f30984"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/bd9a74ac-101c-4298-9835-55a8cde39963 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.194","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b9e7cacb4454e84fe07eb78e10f30984"} experiment-1 | {"level":"info","message":"DELETE /experiments/bd9a74ac-101c-4298-9835-55a8cde39963 204 190ms","method":"DELETE","requestID":"b9e7cacb4454e84fe07eb78e10f30984","responseTime":190,"status":204,"url":"/experiments/bd9a74ac-101c-4298-9835-55a8cde39963"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.745","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"30f95d48793386a1b1a96ffac5a90951"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.736","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ef4aef37b61916634e6d0efee07c6005"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"98cdf3e677dc9f570a53a3460a967944","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"98cdf3e677dc9f570a53a3460a967944"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"a46c699d5e1a03b78b7df8471741ce5d","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"a46c699d5e1a03b78b7df8471741ce5d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"aad81c730e74f6d31ea71bcb67a6aeab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aad81c730e74f6d31ea71bcb67a6aeab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aad81c730e74f6d31ea71bcb67a6aeab"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/be6eb528-8753-4a8c-aba4-63eb43b244c6' closed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.025503,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aad81c730e74f6d31ea71bcb67a6aeab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aad81c730e74f6d31ea71bcb67a6aeab","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/11c63bf2-b6fb-46cd-83d4-9a99f078eb52' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad9245f8-11a5-4782-85bb-8e60e6facd69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9d107a9e-4bdf-4852-9555-558712f51a21","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.5422387} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aad81c730e74f6d31ea71bcb67a6aeab","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8f49f8a-1f63-46c1-b09f-3159e8b8768a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.5493684} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"aad81c730e74f6d31ea71bcb67a6aeab","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad9245f8-11a5-4782-85bb-8e60e6facd69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"091fb63b-3e58-4e20-9717-53d5a89eb6c0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.5600767} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ab840310-b499-4f5e-b3a1-f47bede51722","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.5603623} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"aad81c730e74f6d31ea71bcb67a6aeab","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad9245f8-11a5-4782-85bb-8e60e6facd69","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad9245f8-11a5-4782-85bb-8e60e6facd69","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.560060576Z"}]},"request_id":"758d6ea6-e080-4fcd-9f30-f5451ffab0ac","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.565948} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aad81c730e74f6d31ea71bcb67a6aeab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aad81c730e74f6d31ea71bcb67a6aeab"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aad81c730e74f6d31ea71bcb67a6aeab"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"aad81c730e74f6d31ea71bcb67a6aeab","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.859041,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb98b01da-c88f-4d16-bdb0-b6febeeaab34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"84ee21a9-288a-4365-9e39-a2f868606950","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.5928154} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"791f2a7b-7df6-4483-a0d3-8e2c54b9d6ef","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.5989907} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb98b01da-c88f-4d16-bdb0-b6febeeaab34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"196fee69-95b4-4071-a6aa-365d190d6592","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.6160316} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d95c975-47c9-438e-af55-f867548817b7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.6163044} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb98b01da-c88f-4d16-bdb0-b6febeeaab34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb98b01da-c88f-4d16-bdb0-b6febeeaab34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.616014910Z"}]},"request_id":"a9e77a44-ae42-4f3b-9ae9-d96cf604a914","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.6218455} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"e7c9d635010e9b5d4578b9aba2ce4a85","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"7e3a58f26adf44992b5108a99cb706e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7e3a58f26adf44992b5108a99cb706e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7e3a58f26adf44992b5108a99cb706e7"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.751323,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7e3a58f26adf44992b5108a99cb706e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7e3a58f26adf44992b5108a99cb706e7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf3d82ae-df13-419e-8e06-1376894ae543","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c21ef829-4dae-4c73-88a3-5e2a72d08f02","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.6531887} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7e3a58f26adf44992b5108a99cb706e7","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b84fc94-0b83-41a9-8991-6727cd6d2873","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.6592627} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7e3a58f26adf44992b5108a99cb706e7","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf3d82ae-df13-419e-8e06-1376894ae543","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8801aaab-3131-4342-af5c-4d5b3794ec3b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.671731} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f901b51d-fedc-48c1-b509-89d4c7895543","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.6720428} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"7e3a58f26adf44992b5108a99cb706e7","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf3d82ae-df13-419e-8e06-1376894ae543","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faf3d82ae-df13-419e-8e06-1376894ae543","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.671713636Z"}]},"request_id":"3c377516-4d74-4b68-bfb2-1c6f31b85c99","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.6765091} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7e3a58f26adf44992b5108a99cb706e7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7e3a58f26adf44992b5108a99cb706e7"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e3a58f26adf44992b5108a99cb706e7"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"7e3a58f26adf44992b5108a99cb706e7","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"6b0365e0374b63902331538401d0dd1d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6b0365e0374b63902331538401d0dd1d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b0365e0374b63902331538401d0dd1d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.028076,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6b0365e0374b63902331538401d0dd1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6b0365e0374b63902331538401d0dd1d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe996d4b5-2586-464d-b6f4-cd3e44944916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"517bb055-d33e-4fb5-81c8-cec43bd6037a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7099245} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b0365e0374b63902331538401d0dd1d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f28ff99e-ca64-4385-8589-ec5a2b34aad1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7151945} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6b0365e0374b63902331538401d0dd1d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe996d4b5-2586-464d-b6f4-cd3e44944916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"d532b1a8-fcd1-4c44-bcae-aae8dfe9cb00","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.733124} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b654bad-a808-4d86-8ce6-d8592e8c26e4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7333846} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"6b0365e0374b63902331538401d0dd1d","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe996d4b5-2586-464d-b6f4-cd3e44944916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe996d4b5-2586-464d-b6f4-cd3e44944916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.733104084Z"}]},"request_id":"2be52553-9450-459f-bfe9-4ba0e89a3781","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7392662} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b0365e0374b63902331538401d0dd1d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b0365e0374b63902331538401d0dd1d"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"6b0365e0374b63902331538401d0dd1d","responseTime":53,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b0365e0374b63902331538401d0dd1d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"39ff5286708e6a737c3023187522ee73"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"39ff5286708e6a737c3023187522ee73","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"39ff5286708e6a737c3023187522ee73"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.171852,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"39ff5286708e6a737c3023187522ee73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"39ff5286708e6a737c3023187522ee73","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9436b68d-6432-420a-829d-a5b531a4697c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3a70d948-fc04-447f-a52d-92ee1c7013f3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7728548} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"39ff5286708e6a737c3023187522ee73","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"332e775a-acc8-45eb-ac2e-1198f6ede92b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7808259} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"39ff5286708e6a737c3023187522ee73","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9436b68d-6432-420a-829d-a5b531a4697c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"4468d044-e2fc-49b9-a8cd-9a66a1b5af20","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7943323} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b3c584a-50f3-4e85-9522-234ae4c6f611","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.7946012} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"39ff5286708e6a737c3023187522ee73","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9436b68d-6432-420a-829d-a5b531a4697c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9436b68d-6432-420a-829d-a5b531a4697c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.794301927Z"}]},"request_id":"1295e8c7-cef9-42c5-9320-d1d95b174bd0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.8019407} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"39ff5286708e6a737c3023187522ee73","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"39ff5286708e6a737c3023187522ee73"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39ff5286708e6a737c3023187522ee73"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"39ff5286708e6a737c3023187522ee73","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.153222,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8bbe172-01b8-4b3a-88b7-a48548fd506e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"890481b6-8fa8-45fe-a062-8ba81af2dbb2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.8383737} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47e3ec70-918b-4a3a-98e1-287a34601e11","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.8455088} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8bbe172-01b8-4b3a-88b7-a48548fd506e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"7b61b58c-692a-484e-8450-5995cebf0192","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.8631053} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9f07b4a-d9cb-48c9-b136-a5fb21e15c58","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.8634682} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8bbe172-01b8-4b3a-88b7-a48548fd506e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8bbe172-01b8-4b3a-88b7-a48548fd506e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.863075411Z"}]},"request_id":"a559d7e7-b8e2-4374-be57-ad580c04b1d2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.8701158} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"25a2459b1fcb41f54b62e02b8dc56e1d","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.223238,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0555ed62-a206-4b51-abe1-988fdb03e14c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2c4aef59-0e5c-459f-a8fb-6c81656bcd5b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.906033} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8a7fe38-9ba0-4322-8f51-d7ba00c7744b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.913892} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0555ed62-a206-4b51-abe1-988fdb03e14c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"e8c11508-f689-47eb-853b-fdba9749bd29","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.9279819} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72258d03-d93e-4684-b2d5-8e68f1cb700c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.9281592} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0555ed62-a206-4b51-abe1-988fdb03e14c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0555ed62-a206-4b51-abe1-988fdb03e14c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.927958957Z"}]},"request_id":"2594b081-fb81-41ba-b730-b82e8cc86efa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.9382272} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e"} gateway-1 | {"time_local":"16/Jul/2024:14:06:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"6a7a04a7cfc258ed4cc495baf4c58c1e","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0","level":"info","message":"auth send jwt","requestID":"d838ddaab475389b49c4252deb109222"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d838ddaab475389b49c4252deb109222","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d838ddaab475389b49c4252deb109222"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.332452,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d838ddaab475389b49c4252deb109222","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138795,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5NX0.SkPGIA838Jt1aF6OKMokjUbjZvYnbA6TTxR5AzsF8a0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d838ddaab475389b49c4252deb109222","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cf47cd4-b3ef-4a4d-8c32-26a9745a1b3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f6d67370-d984-4545-b42a-ebd3291aee43","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.972276} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d838ddaab475389b49c4252deb109222","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0f5afe4-9334-452b-9693-edc98cf31705","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.9794478} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d838ddaab475389b49c4252deb109222","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cf47cd4-b3ef-4a4d-8c32-26a9745a1b3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"335bc95f-50c5-4eef-b0e3-96fa92b989fb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.9967737} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bcb2934e-75fe-47b9-801e-203480b0cb25","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138795.997274} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"d838ddaab475389b49c4252deb109222","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cf47cd4-b3ef-4a4d-8c32-26a9745a1b3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4cf47cd4-b3ef-4a4d-8c32-26a9745a1b3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:35.996743043Z"}]},"request_id":"8adaf400-818a-49a3-a185-d022663a141b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.0041} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d838ddaab475389b49c4252deb109222","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d838ddaab475389b49c4252deb109222"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d838ddaab475389b49c4252deb109222"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"d838ddaab475389b49c4252deb109222","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"e7406edbd580155e183ab473d46e9211"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e7406edbd580155e183ab473d46e9211","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e7406edbd580155e183ab473d46e9211"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.249588,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e7406edbd580155e183ab473d46e9211","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e7406edbd580155e183ab473d46e9211","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F009233d3-5aa2-4e88-be3a-36b6237f328a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5cb57d8a-6eee-489d-8afa-9b0058731afb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.0417793} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7406edbd580155e183ab473d46e9211","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b044a85f-ca61-4551-90dc-7aa2eab96c56","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.0494108} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e7406edbd580155e183ab473d46e9211","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F009233d3-5aa2-4e88-be3a-36b6237f328a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"2584c559-0a21-453b-8321-56c2cc33a4b6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.0624282} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"987f80e6-70c3-4d70-b5f4-0602cb4b5c0d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.0632064} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e7406edbd580155e183ab473d46e9211","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F009233d3-5aa2-4e88-be3a-36b6237f328a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F009233d3-5aa2-4e88-be3a-36b6237f328a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.062406667Z"}]},"request_id":"a7a6c9ba-9397-4b18-a461-1017b60b1764","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.0702026} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e7406edbd580155e183ab473d46e9211","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e7406edbd580155e183ab473d46e9211"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7406edbd580155e183ab473d46e9211"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"e7406edbd580155e183ab473d46e9211","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"a72bd7d3e90b3430571e3775692d4418"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a72bd7d3e90b3430571e3775692d4418","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a72bd7d3e90b3430571e3775692d4418"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.225201,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a72bd7d3e90b3430571e3775692d4418","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a72bd7d3e90b3430571e3775692d4418","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d145d89-b427-495f-a1c3-38a02996d706","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d21eafd6-665d-4dd9-a335-a3d415e9e14f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.1058967} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a72bd7d3e90b3430571e3775692d4418","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a968c398-0ce5-4183-ad5a-15c7b21d64fb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.1137693} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a72bd7d3e90b3430571e3775692d4418","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d145d89-b427-495f-a1c3-38a02996d706","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"9233904f-772a-4ed7-806a-dc98d371ed21","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.1312957} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1a97612-fee9-4aca-9651-c21df25eb4b2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.1318681} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"a72bd7d3e90b3430571e3775692d4418","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d145d89-b427-495f-a1c3-38a02996d706","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4d145d89-b427-495f-a1c3-38a02996d706","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.131261670Z"}]},"request_id":"bfa588de-d527-4e8b-b0c0-e6518d2a4019","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.1399624} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a72bd7d3e90b3430571e3775692d4418","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a72bd7d3e90b3430571e3775692d4418"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.067","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a72bd7d3e90b3430571e3775692d4418"} device-1 | {"level":"info","message":"POST /devices? 201 61ms","method":"POST","requestID":"a72bd7d3e90b3430571e3775692d4418","responseTime":61,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"023a7f62d56f5674200a9307cd380c9d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"023a7f62d56f5674200a9307cd380c9d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"023a7f62d56f5674200a9307cd380c9d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.209463,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"023a7f62d56f5674200a9307cd380c9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"023a7f62d56f5674200a9307cd380c9d","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"394a94b6-15a0-4aa4-b244-87df528d22e8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.1812148} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"023a7f62d56f5674200a9307cd380c9d","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa5afe5e-d2c5-41f0-9bf0-9acb6064c138","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.1894598} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"023a7f62d56f5674200a9307cd380c9d","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"7c8fbeb4-f9e3-43db-9075-27413286e823","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.203196} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97c5e028-29f1-46dc-822d-d847631e266b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.2035742} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"023a7f62d56f5674200a9307cd380c9d","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.203173077Z"}]},"request_id":"7adf1e48-e144-41d1-a479-ea9a5afb5cfc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.2113483} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"023a7f62d56f5674200a9307cd380c9d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"023a7f62d56f5674200a9307cd380c9d"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.068","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"023a7f62d56f5674200a9307cd380c9d"} device-1 | {"level":"info","message":"POST /devices? 201 62ms","method":"POST","requestID":"023a7f62d56f5674200a9307cd380c9d","responseTime":62,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"6813d0e10eda406e3ee4ced8949223da"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6813d0e10eda406e3ee4ced8949223da","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6813d0e10eda406e3ee4ced8949223da"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.187068,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6813d0e10eda406e3ee4ced8949223da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6813d0e10eda406e3ee4ced8949223da","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"032b55ba-2925-4375-a169-50a4eb576bf3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.2484038} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6813d0e10eda406e3ee4ced8949223da","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"372063e1-5f7a-4d8d-8256-599d18e984df","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.2565756} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6813d0e10eda406e3ee4ced8949223da","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8bd2b700-294b-4d69-9f8e-a4e35bb69753","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.2746453} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f7a1461-804e-4d6f-9469-a3743fa69679","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.274896} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"6813d0e10eda406e3ee4ced8949223da","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.274612472Z"}]},"request_id":"8e7a31d4-535c-4624-873c-24477bc19e72","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.2822394} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6813d0e10eda406e3ee4ced8949223da","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6813d0e10eda406e3ee4ced8949223da"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.067","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6813d0e10eda406e3ee4ced8949223da"} device-1 | {"level":"info","message":"POST /devices? 201 61ms","method":"POST","requestID":"6813d0e10eda406e3ee4ced8949223da","responseTime":61,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"a6fec133b5c581ac2941e237c33a6b96"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a6fec133b5c581ac2941e237c33a6b96","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a6fec133b5c581ac2941e237c33a6b96"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.774956,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a6fec133b5c581ac2941e237c33a6b96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a6fec133b5c581ac2941e237c33a6b96","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"626dc49a-c8f6-4cc3-81a6-84cf946f524c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.322502} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a6fec133b5c581ac2941e237c33a6b96","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2997fa95-8ef0-44f0-a4d5-cacf0a818331","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.330014} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a6fec133b5c581ac2941e237c33a6b96","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"77352280-3f95-49e4-9b11-980f47b82c45","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.3435981} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"270f0272-af87-4585-9f42-22d7e76cb7fa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.3440459} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"a6fec133b5c581ac2941e237c33a6b96","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.343572063Z"}]},"request_id":"f86ebf72-ca18-4f25-92c7-339d12f47c87","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.3506417} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a6fec133b5c581ac2941e237c33a6b96","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a6fec133b5c581ac2941e237c33a6b96"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6fec133b5c581ac2941e237c33a6b96"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"a6fec133b5c581ac2941e237c33a6b96","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"c5cf6c9d842d3c336cd8910d0fc07838"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c5cf6c9d842d3c336cd8910d0fc07838","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c5cf6c9d842d3c336cd8910d0fc07838"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181697,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c5cf6c9d842d3c336cd8910d0fc07838","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c5cf6c9d842d3c336cd8910d0fc07838","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.203173077Z"}]},"request_id":"5ca9e118-b6e8-43fc-a805-94179e00c0ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.3882787} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c5cf6c9d842d3c336cd8910d0fc07838","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33e1543a-5a44-4e4e-ae87-58b32bc9ccf3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.4007} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c5cf6c9d842d3c336cd8910d0fc07838","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.203173077Z"}]},"request_id":"ca1d4936-41af-4aa0-8a84-52c3513497ff","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.413021} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c5cf6c9d842d3c336cd8910d0fc07838","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c5cf6c9d842d3c336cd8910d0fc07838"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5cf6c9d842d3c336cd8910d0fc07838"} device-1 | {"level":"info","message":"PATCH /devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8? 200 50ms","method":"PATCH","requestID":"c5cf6c9d842d3c336cd8910d0fc07838","responseTime":50,"status":200,"url":"/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25537,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.274612472Z"}]},"request_id":"e63db30b-d804-42ff-86b7-922bfc3a8aa8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.4417303} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c36454c8-f4bb-4fdb-b43c-93fe99c09941","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.4494684} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.274612472Z"}]},"request_id":"e66437d4-f8b6-4ab3-a793-1d35f918c259","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.4610596} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0a5cca51-79bd-4d47-ab99-03e7778093b2? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e"} device-1 | {"level":"info","message":"PATCH /devices/0a5cca51-79bd-4d47-ab99-03e7778093b2? 200 38ms","method":"PATCH","requestID":"5e7301e3e6517c16a1c2ac8c7ae54a6e","responseTime":38,"status":200,"url":"/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312935,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4f97dfe6e61e03d2a42898b57c08b9e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.343572063Z"}]},"request_id":"c224e28a-d5a8-4fe9-959d-e8ddb39420b7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.4876654} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88230519-dd30-4be1-881f-e386af776e61","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.495685} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.343572063Z"}]},"request_id":"eb9aa7fb-4e56-4544-97f3-2b127f6def16","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.5072625} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7"} device-1 | {"level":"info","message":"PATCH /devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa? 200 37ms","method":"PATCH","requestID":"4f97dfe6e61e03d2a42898b57c08b9e7","responseTime":37,"status":200,"url":"/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.256931,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.203173077Z"}]},"request_id":"acfd715e-fb3f-4f4b-8c4b-4bfab38808be","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.531516} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190172,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.801609,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209241,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad9245f8-11a5-4782-85bb-8e60e6facd69","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ad9245f8-11a5-4782-85bb-8e60e6facd69","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b98b01da-c88f-4d16-bdb0-b6febeeaab34","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b98b01da-c88f-4d16-bdb0-b6febeeaab34","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/af3d82ae-df13-419e-8e06-1376894ae543","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/af3d82ae-df13-419e-8e06-1376894ae543","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41204","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:41204","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.383256,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc"} device-1 | {"level":"info","message":"GET /devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8? 200 41ms","method":"GET","requestID":"ad41f4b2c8a697cbeb135c022ba89ddc","responseTime":41,"status":200,"url":"/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"7989748fbbad512a1ec86cd7fdddab6c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7989748fbbad512a1ec86cd7fdddab6c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.751489,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7989748fbbad512a1ec86cd7fdddab6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0a5cca51-79bd-4d47-ab99-03e7778093b2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.274612472Z"}]},"request_id":"3551c41e-3491-46cf-a1af-05589377bb1f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.5827796} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.610806,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.200677,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.858078,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:41204","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:41204","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.991373,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e996d4b5-2586-464d-b6f4-cd3e44944916","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7989748fbbad512a1ec86cd7fdddab6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e996d4b5-2586-464d-b6f4-cd3e44944916","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9436b68d-6432-420a-829d-a5b531a4697c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7989748fbbad512a1ec86cd7fdddab6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9436b68d-6432-420a-829d-a5b531a4697c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8bbe172-01b8-4b3a-88b7-a48548fd506e","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7989748fbbad512a1ec86cd7fdddab6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c8bbe172-01b8-4b3a-88b7-a48548fd506e","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0555ed62-a206-4b51-abe1-988fdb03e14c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7989748fbbad512a1ec86cd7fdddab6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/0555ed62-a206-4b51-abe1-988fdb03e14c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:41208","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.955492,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7989748fbbad512a1ec86cd7fdddab6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41208","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.618953,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7989748fbbad512a1ec86cd7fdddab6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7989748fbbad512a1ec86cd7fdddab6c"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0a5cca51-79bd-4d47-ab99-03e7778093b2? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7989748fbbad512a1ec86cd7fdddab6c"} device-1 | {"level":"info","message":"GET /devices/0a5cca51-79bd-4d47-ab99-03e7778093b2? 200 59ms","method":"GET","requestID":"7989748fbbad512a1ec86cd7fdddab6c","responseTime":59,"status":200,"url":"/devices/0a5cca51-79bd-4d47-ab99-03e7778093b2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.334357,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F383c4f9d-b0ab-481f-9827-759bcc9b9efa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.343572063Z"}]},"request_id":"ec1f8f34-9548-4df7-83dc-136b27b58de5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.6498682} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19798,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.865311,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60084","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.088779,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:41204","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4cf47cd4-b3ef-4a4d-8c32-26a9745a1b3c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/4cf47cd4-b3ef-4a4d-8c32-26a9745a1b3c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/009233d3-5aa2-4e88-be3a-36b6237f328a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/009233d3-5aa2-4e88-be3a-36b6237f328a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4d145d89-b427-495f-a1c3-38a02996d706","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/4d145d89-b427-495f-a1c3-38a02996d706","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41204","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.581712,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5e3d11b2-5b5d-4d71-a09e-4bfd7e8609d8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0"} device-1 | {"level":"info","message":"GET /devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa? 200 40ms","method":"GET","requestID":"12e3d76a96d3b0aded1e7df93e4d5ed0","responseTime":40,"status":200,"url":"/devices/383c4f9d-b0ab-481f-9827-759bcc9b9efa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"939b399c48e45f3bcac736174b2a1fed"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"939b399c48e45f3bcac736174b2a1fed","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"939b399c48e45f3bcac736174b2a1fed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.400103,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"939b399c48e45f3bcac736174b2a1fed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"939b399c48e45f3bcac736174b2a1fed","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6ae59929-7203-4030-8d0c-759d0c9f9458","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.7171779} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"939b399c48e45f3bcac736174b2a1fed","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"413414f5-dbf7-49d6-bb71-a4d866b5f3c2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.7260494} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"939b399c48e45f3bcac736174b2a1fed","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"9e9ac692-c5da-48f8-86c7-be6e10105248","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.7407222} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48b740a6-98ac-446b-9ea4-f73ac0b76e9d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.741187} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"939b399c48e45f3bcac736174b2a1fed","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.740698002Z"}]},"request_id":"f45bc891-c7f6-4003-9c1b-dc973bbcc41b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.747635} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"939b399c48e45f3bcac736174b2a1fed","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"939b399c48e45f3bcac736174b2a1fed"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.068","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"939b399c48e45f3bcac736174b2a1fed"} device-1 | {"level":"info","message":"POST /devices? 201 62ms","method":"POST","requestID":"939b399c48e45f3bcac736174b2a1fed","responseTime":62,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"db101193d8a9a757e7a860499e42b549"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"db101193d8a9a757e7a860499e42b549","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"db101193d8a9a757e7a860499e42b549"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.08011,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"db101193d8a9a757e7a860499e42b549","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db101193d8a9a757e7a860499e42b549","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52591352-215b-4b8c-8b3d-2081c1b3b916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4e0e71c3-ef11-4638-a817-6eb75a25314c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.7845063} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"db101193d8a9a757e7a860499e42b549","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c2b9a80-8e29-4806-a1ab-74e36c34803a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.792713} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"db101193d8a9a757e7a860499e42b549","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52591352-215b-4b8c-8b3d-2081c1b3b916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"cc09d44e-1505-4390-9593-a7f2722f6a60","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.8050263} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12e988e2-8f4f-49dc-b2bc-b165026e29d2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.8051853} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"db101193d8a9a757e7a860499e42b549","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52591352-215b-4b8c-8b3d-2081c1b3b916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52591352-215b-4b8c-8b3d-2081c1b3b916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.804996706Z"}]},"request_id":"24919d01-4b4a-45ed-b7fc-3605b1e345af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.8119373} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"db101193d8a9a757e7a860499e42b549","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"db101193d8a9a757e7a860499e42b549"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"545","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db101193d8a9a757e7a860499e42b549"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"db101193d8a9a757e7a860499e42b549","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM","level":"info","message":"auth send jwt","requestID":"c25c606d43ab415e4179f3d80247d1b9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c25c606d43ab415e4179f3d80247d1b9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c25c606d43ab415e4179f3d80247d1b9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.249539,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c25c606d43ab415e4179f3d80247d1b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138796,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5Nn0.Vpl4HBvCBlutVccuusZIOXM3iqedwbLy2Z3lbCOirBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c25c606d43ab415e4179f3d80247d1b9","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f58b99e3-7493-4d9f-9caa-f751d85046bf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.854979} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c25c606d43ab415e4179f3d80247d1b9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63d17743-ff35-4c47-a78f-aafb46f57ffe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.862626} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c25c606d43ab415e4179f3d80247d1b9","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"2054b1a0-4173-48ea-891d-4c4c6e87a914","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.8770473} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28619d4a-ebbe-4d21-9931-85a638f5dab1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.8772593} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c25c606d43ab415e4179f3d80247d1b9","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.877022526Z"}]},"request_id":"a593dee0-ea4a-440e-83a1-76c5b58bf5b9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138796.8839946} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"c25c606d43ab415e4179f3d80247d1b9","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c25c606d43ab415e4179f3d80247d1b9"} device-1 | {"level":"info","message":"POST /devices? 201 65ms","method":"POST","requestID":"c25c606d43ab415e4179f3d80247d1b9","responseTime":65,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.072","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c25c606d43ab415e4179f3d80247d1b9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2406fce9ec5129adb5d855413e4dcb7a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2406fce9ec5129adb5d855413e4dcb7a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3f65e730-c0e7-42e7-ba0f-319777180762/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2406fce9ec5129adb5d855413e4dcb7a"} device-1 | {"level":"info","message":"OPTIONS /devices/3f65e730-c0e7-42e7-ba0f-319777180762/websocket 200 2ms","method":"OPTIONS","requestID":"2406fce9ec5129adb5d855413e4dcb7a","responseTime":2,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA","level":"info","message":"auth send jwt","requestID":"052c32170ac27643e4d61eb7129f1bff"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"052c32170ac27643e4d61eb7129f1bff","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"052c32170ac27643e4d61eb7129f1bff"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6433a89e2705bd3c79acdcd66f2b255","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a6433a89e2705bd3c79acdcd66f2b255","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/981d4b44-2680-458a-a882-67ffa10268c2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a6433a89e2705bd3c79acdcd66f2b255"} device-1 | {"level":"info","message":"OPTIONS /devices/981d4b44-2680-458a-a882-67ffa10268c2/websocket 200 2ms","method":"OPTIONS","requestID":"a6433a89e2705bd3c79acdcd66f2b255","responseTime":2,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.631797,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"052c32170ac27643e4d61eb7129f1bff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"052c32170ac27643e4d61eb7129f1bff","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA","level":"info","message":"auth send jwt","requestID":"10181324cd6f103faf42268507de1140"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"10181324cd6f103faf42268507de1140","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"10181324cd6f103faf42268507de1140"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.955274,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"10181324cd6f103faf42268507de1140","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"10181324cd6f103faf42268507de1140","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"052c32170ac27643e4d61eb7129f1bff"} gateway-1 | {"time_local":"16/Jul/2024:14:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3f65e730-c0e7-42e7-ba0f-319777180762/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"052c32170ac27643e4d61eb7129f1bff"} device-1 | {"level":"info","message":"POST /devices/3f65e730-c0e7-42e7-ba0f-319777180762/websocket 200 31ms","method":"POST","requestID":"052c32170ac27643e4d61eb7129f1bff","responseTime":31,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"10181324cd6f103faf42268507de1140"} gateway-1 | {"time_local":"16/Jul/2024:14:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/981d4b44-2680-458a-a882-67ffa10268c2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"10181324cd6f103faf42268507de1140"} device-1 | {"level":"info","message":"POST /devices/981d4b44-2680-458a-a882-67ffa10268c2/websocket 200 24ms","method":"POST","requestID":"10181324cd6f103faf42268507de1140","responseTime":24,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA","level":"info","message":"auth send jwt","requestID":"ae5da6ae137ef9fe7b4e305d1c340944"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae5da6ae137ef9fe7b4e305d1c340944","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ae5da6ae137ef9fe7b4e305d1c340944"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.290054,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ae5da6ae137ef9fe7b4e305d1c340944","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ae5da6ae137ef9fe7b4e305d1c340944","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.877022526Z"}]},"request_id":"31a23eff-64e0-4aaa-a90d-8a347f07f4f3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138798.918521} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ae5da6ae137ef9fe7b4e305d1c340944","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ae5da6ae137ef9fe7b4e305d1c340944"} device-1 | {"level":"info","message":"GET /devices/981d4b44-2680-458a-a882-67ffa10268c2? 200 18ms","method":"GET","requestID":"ae5da6ae137ef9fe7b4e305d1c340944","responseTime":18,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/981d4b44-2680-458a-a882-67ffa10268c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae5da6ae137ef9fe7b4e305d1c340944"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA","level":"info","message":"auth send jwt","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.1962,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e9446d2ed87cfdf39ba3bb830dfc0921","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Attempting to run experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Attempting to book experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully booked experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ebbd3d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.27145,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/52591352-215b-4b8c-8b3d-2081c1b3b916","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/52591352-215b-4b8c-8b3d-2081c1b3b916","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872808,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ebbd3d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9ebbd3d0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52591352-215b-4b8c-8b3d-2081c1b3b916","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F52591352-215b-4b8c-8b3d-2081c1b3b916","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.804996706Z"}]},"request_id":"0be5f802-cb49-4a6a-b02e-9232a5b909f2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138798.9999204} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.877022526Z"}]},"request_id":"495ea395-c27d-45ed-bd37-3918df06cd86","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.0017743} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9ebbd3d0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ebbd3d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/981d4b44-2680-458a-a882-67ffa10268c2? 200 22ms","method":"GET","requestID":"9ebbd3d0-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959235,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/52591352-215b-4b8c-8b3d-2081c1b3b916? 200 30ms","method":"GET","requestID":"9ebb5ea0-437c-11ef-8659-f5877ab12720","responseTime":30,"status":200,"url":"/devices/52591352-215b-4b8c-8b3d-2081c1b3b916?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Setting up experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully set up experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9eca2bb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9eca79d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ecaef00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.953081,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9eca2bb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully running experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9eca2bb0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.59922,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9eca79d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9eca79d0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.563044,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24563d30-c1cb-4975-992b-b67c47f51da3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.0983365} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ecaef00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9ecaef00-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.740698002Z"}]},"request_id":"df8c80a8-da68-46d0-b8c4-6964da4a7a9b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1015642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.877022526Z"}]},"request_id":"7cd5615f-fdc6-46eb-829b-e1ae5f4ec833","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1035957} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"9eca2bb0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9eca79d0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6acb9874-163b-480c-8f4a-4b5d35abdebe#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6acb9874-163b-480c-8f4a-4b5d35abdebe","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"fdc54e9f-55cf-4725-9518-67331ca3ecef","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.113746} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ecaef00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79e4a2b9-0c2f-4969-86a8-c3ef4ea2c06a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1139688} device-1 | {"level":"info","message":"POST /devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling 200 26ms","method":"POST","requestID":"9ecaef00-437c-11ef-8659-f5877ab12720","responseTime":26,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9eca2bb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/3f65e730-c0e7-42e7-ba0f-319777180762? 200 32ms","method":"GET","requestID":"9eca2bb0-437c-11ef-8659-f5877ab12720","responseTime":32,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9eca79d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/981d4b44-2680-458a-a882-67ffa10268c2? 200 31ms","method":"GET","requestID":"9eca79d0-437c-11ef-8659-f5877ab12720","responseTime":31,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ecf5bd0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07757f5b-7bc9-4185-85ca-42ad67e6b957","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1244345} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.452118,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ed09450-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ecf5bd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"9ecf5bd0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.202","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ecf5bd0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"level":"info","message":"POST /experiments? 201 196ms","method":"POST","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921","responseTime":196,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling 200 14ms","method":"POST","requestID":"9ecf5bd0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"761a1da0-6221-448d-bc33-58cf71fb1081","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1319401} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.15487,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ed09450-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9ed09450-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE","level":"info","message":"auth send jwt","requestID":"60c69ef5842700d07ffc82d0d46020e6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"60c69ef5842700d07ffc82d0d46020e6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ed09450-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling 200 15ms","method":"POST","requestID":"9ed09450-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60c69ef5842700d07ffc82d0d46020e6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ed35370-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.417533,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"60c69ef5842700d07ffc82d0d46020e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138799,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"60c69ef5842700d07ffc82d0d46020e6","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04642b3f-ece9-446b-b6d7-40105e936537","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1506996} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.67827,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ed35370-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9ed35370-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ed35370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling 200 12ms","method":"POST","requestID":"9ed35370-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.740698002Z"}]},"request_id":"2f7d83dc-eec8-4df6-847d-4a84654d6654","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1560466} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Building connection plan","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"69bbbafa-e30e-4831-b6ce-cde8a38da4e2"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"09cb7775-e87a-4ef8-9da7-886ee907f6cf"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"9ae0999f-0547-4d6c-bc76-407c893a9dc0"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"60c69ef5842700d07ffc82d0d46020e6","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60c69ef5842700d07ffc82d0d46020e6"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3f65e730-c0e7-42e7-ba0f-319777180762? HTTP/1.1","status": "200","body_bytes_sent":"283","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60c69ef5842700d07ffc82d0d46020e6"} device-1 | {"level":"info","message":"GET /devices/3f65e730-c0e7-42e7-ba0f-319777180762? 200 23ms","method":"GET","requestID":"60c69ef5842700d07ffc82d0d46020e6","responseTime":23,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.581101,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138798,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OH0.6SnRVMuxyKfJ7MgTVJBsYRf4thzTuzYeRwz2HXPmRdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE","level":"info","message":"auth send jwt","requestID":"356a2b66d8b8b552b1d086859afd88e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"356a2b66d8b8b552b1d086859afd88e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"356a2b66d8b8b552b1d086859afd88e7"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.093115,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"356a2b66d8b8b552b1d086859afd88e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138799,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"356a2b66d8b8b552b1d086859afd88e7","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"6375d4a3-2b69-47e2-97bf-f5eecc1e22af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1852834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a64c1f0-020e-4c99-9520-1c61f0c490c0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.1854901} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:36.877022526Z"}]},"request_id":"8dd25340-4afa-43fb-aa96-7cd475a58b24","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.190658} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"356a2b66d8b8b552b1d086859afd88e7","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc'","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"356a2b66d8b8b552b1d086859afd88e7"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/981d4b44-2680-458a-a882-67ffa10268c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"356a2b66d8b8b552b1d086859afd88e7"} device-1 | {"level":"info","message":"GET /devices/981d4b44-2680-458a-a882-67ffa10268c2? 200 29ms","method":"GET","requestID":"356a2b66d8b8b552b1d086859afd88e7","responseTime":29,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2?"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc'","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 45ms","method":"POST","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720","responseTime":45,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"9ed5eb80-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e9446d2ed87cfdf39ba3bb830dfc0921"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ee15d30-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6084a051-a1a8-4074-a786-5d58abe8666e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.2406983} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.826638,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ee15d30-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ee15d30-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ee15d30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling 200 10ms","method":"POST","requestID":"9ee15d30-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ee331f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"405696c5-c741-41ad-b489-7aaa412a2952","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.2531052} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.678999,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ee331f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9ee331f0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ee331f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling 200 13ms","method":"POST","requestID":"9ee331f0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6ce609e-6f4c-4aae-afd6-47521a6949bc","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ffb492104b90cd57e5bc17153447a4c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6ffb492104b90cd57e5bc17153447a4c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc"}}},"level":"info","message":"received a callback","requestID":"6ffb492104b90cd57e5bc17153447a4c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"6ffb492104b90cd57e5bc17153447a4c","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ffb492104b90cd57e5bc17153447a4c"} device-1 | {"data":{"peerconnection":"b6ce609e-6f4c-4aae-afd6-47521a6949bc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b6ce609e-6f4c-4aae-afd6-47521a6949bc","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6ce609e-6f4c-4aae-afd6-47521a6949bc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f5dbce5d7261f50d283ad301c1be2a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"8f5dbce5d7261f50d283ad301c1be2a5","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc"}}},"level":"info","message":"received a callback","requestID":"8f5dbce5d7261f50d283ad301c1be2a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9eeef1c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6ce609e-6f4c-4aae-afd6-47521a6949bc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c5d7de2-59cf-46ba-b6fc-68237298417f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.328551} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.113796,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9eeef1c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9eeef1c0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9eeef1c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc 200 8ms","method":"GET","requestID":"9eeef1c0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"8f5dbce5d7261f50d283ad301c1be2a5","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"8f5dbce5d7261f50d283ad301c1be2a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ef33780-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35b942fb-665f-4908-a58d-a83e35288d45","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.3571646} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.234069,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ef33780-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9ef33780-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ef33780-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling 200 9ms","method":"POST","requestID":"9ef33780-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9ef50c40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4318d015-5b83-4fb0-80b4-e89e43d13d8a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.3690825} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.91942,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ef50c40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9ef50c40-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9ef50c40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling 200 9ms","method":"POST","requestID":"9ef50c40-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE","level":"info","message":"auth send jwt","requestID":"77a97b448e652009f426652e960b8813"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"77a97b448e652009f426652e960b8813","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","requestID":"77a97b448e652009f426652e960b8813"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.750099,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"77a97b448e652009f426652e960b8813","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138799,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"77a97b448e652009f426652e960b8813","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","requestID":"77a97b448e652009f426652e960b8813"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77a97b448e652009f426652e960b8813"} experiment-1 | {"level":"info","message":"GET /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe 200 10ms","method":"GET","requestID":"77a97b448e652009f426652e960b8813","responseTime":10,"status":200,"url":"/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE","level":"info","message":"auth send jwt","requestID":"3783f400c893545e2f6099ef97ea8732"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3783f400c893545e2f6099ef97ea8732","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","requestID":"3783f400c893545e2f6099ef97ea8732"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.322037,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3783f400c893545e2f6099ef97ea8732","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138799,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3783f400c893545e2f6099ef97ea8732","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Attempting to finish experiment","requestID":"3783f400c893545e2f6099ef97ea8732"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9efea930-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.676606,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9efea930-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138799,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9efea930-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6ce609e-6f4c-4aae-afd6-47521a6949bc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"660a5bbca772fdb41dd8dcb010ab86cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"660a5bbca772fdb41dd8dcb010ab86cc","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a024a6b46fd31a4dc24c86bbfb3f5af7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a024a6b46fd31a4dc24c86bbfb3f5af7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc"}}},"level":"info","message":"received a callback","requestID":"660a5bbca772fdb41dd8dcb010ab86cc"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6ce609e-6f4c-4aae-afd6-47521a6949bc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6ce609e-6f4c-4aae-afd6-47521a6949bc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"e47b7d79-b43d-417a-a95e-f648bab42ae4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.446122} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb5e69f4-ee8f-45aa-8cfe-7e6d1639b831","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.446397} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc"}}},"level":"info","message":"received a callback","requestID":"a024a6b46fd31a4dc24c86bbfb3f5af7"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"9efea930-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b6ce609e-6f4c-4aae-afd6-47521a6949bc","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9efea930-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc 204 38ms","method":"DELETE","requestID":"9efea930-437c-11ef-8659-f5877ab12720","responseTime":38,"status":204,"url":"/peerconnections/b6ce609e-6f4c-4aae-afd6-47521a6949bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"},"level":"info","message":"Successfully finished experiment","requestID":"3783f400c893545e2f6099ef97ea8732"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f081f10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F981d4b44-2680-458a-a882-67ffa10268c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c7f1974-1f9e-4e0c-b46e-321b55b582b5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.4969587} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.81405,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9f081f10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"9f081f10-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f081f10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling 200 15ms","method":"POST","requestID":"9f081f10-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/981d4b44-2680-458a-a882-67ffa10268c2/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6acb9874-163b-480c-8f4a-4b5d35abdebe': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6acb9874-163b-480c-8f4a-4b5d35abdebe","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"ee07999a-08c8-4171-9595-dddff061856a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.5064814} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54dad369-f227-43b0-afc2-dfbc6ae4155f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.5069532} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f0ade30-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"3783f400c893545e2f6099ef97ea8732","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f65e730-c0e7-42e7-ba0f-319777180762","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69ef7fdd-b739-459d-9654-ccf64b54ca24","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.515672} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.574648,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9f0ade30-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9f0ade30-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f0ade30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling 200 15ms","method":"POST","requestID":"9f0ade30-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/3f65e730-c0e7-42e7-ba0f-319777180762/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe","requestID":"3783f400c893545e2f6099ef97ea8732"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3783f400c893545e2f6099ef97ea8732"} experiment-1 | {"level":"info","message":"DELETE /experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe 204 154ms","method":"DELETE","requestID":"3783f400c893545e2f6099ef97ea8732","responseTime":154,"status":204,"url":"/experiments/6acb9874-163b-480c-8f4a-4b5d35abdebe"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"660a5bbca772fdb41dd8dcb010ab86cc","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"660a5bbca772fdb41dd8dcb010ab86cc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"a024a6b46fd31a4dc24c86bbfb3f5af7","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"a024a6b46fd31a4dc24c86bbfb3f5af7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE","level":"info","message":"auth send jwt","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.889691,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138799,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.719","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"71307d34ba8369a2533d4507e9329354"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2645","request_time":"0.709","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"117f42485bde3eb29abc7261db239163"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3f65e730-c0e7-42e7-ba0f-319777180762' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/981d4b44-2680-458a-a882-67ffa10268c2' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f3d4400d-c005-4823-8add-5c5d5a223563","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6051636} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c09e2bc-b171-4805-b30f-d9e1b4c42751","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6104481} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8f59c9cf-2ae0-4926-a72e-b34208a1ac90","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6213007} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f686467c-ae19-4d07-babc-1bf730cdba22","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6214705} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.621275137Z"}]},"request_id":"04bdf698-662f-4c38-91c1-f8e7043831b4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6255915} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a98bd1a06af7dfd3729a5f431dbd7d15"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE","level":"info","message":"auth send jwt","requestID":"5cfdb6aa3482e0104e23857244e7264b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5cfdb6aa3482e0104e23857244e7264b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5cfdb6aa3482e0104e23857244e7264b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.91768,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5cfdb6aa3482e0104e23857244e7264b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138799,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODc5OX0._l37NcaLMmO010YFBVZERwcKzZbTnVb1uRdZI5Ob4EE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5cfdb6aa3482e0104e23857244e7264b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9bb2ac0c-4797-4327-ae96-908074b25341","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6506424} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5cfdb6aa3482e0104e23857244e7264b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4288bc99-15cf-4dc2-a944-167e492ec83c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.655517} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5cfdb6aa3482e0104e23857244e7264b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"b93fb920-ea3d-4ea9-b8c8-ec8d3c4de97f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6720636} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a67bc54-9b84-440b-84d7-170d4bd646aa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.6722295} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"5cfdb6aa3482e0104e23857244e7264b","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.672038317Z"}]},"request_id":"bdc09f11-cfaf-43dd-81d3-e5a59067597e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138799.677999} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5cfdb6aa3482e0104e23857244e7264b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5cfdb6aa3482e0104e23857244e7264b"} gateway-1 | {"time_local":"16/Jul/2024:14:06:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5cfdb6aa3482e0104e23857244e7264b"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"5cfdb6aa3482e0104e23857244e7264b","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMH0.Ju7O0s6Yam6qLNXkvSDQFHgAlPa-KpPSUiW2rhgWaZw","level":"info","message":"auth send jwt","requestID":"170857b1eaacfcd861688ffc1c58fdb2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"170857b1eaacfcd861688ffc1c58fdb2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"170857b1eaacfcd861688ffc1c58fdb2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.134244,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"170857b1eaacfcd861688ffc1c58fdb2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138800,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMH0.Ju7O0s6Yam6qLNXkvSDQFHgAlPa-KpPSUiW2rhgWaZw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"170857b1eaacfcd861688ffc1c58fdb2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.621275137Z"}]},"request_id":"0ca4876d-172e-42b7-8374-4a17a763438f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138800.187889} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"170857b1eaacfcd861688ffc1c58fdb2","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d7a05ae-5a27-4816-9b7b-1ba3165c02c5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138800.1964834} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"170857b1eaacfcd861688ffc1c58fdb2","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.621275137Z"}]},"request_id":"1475cc83-cd85-4ecb-bf9b-501a4716d80b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138800.2102046} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"170857b1eaacfcd861688ffc1c58fdb2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"170857b1eaacfcd861688ffc1c58fdb2"} gateway-1 | {"time_local":"16/Jul/2024:14:06:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.052","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"170857b1eaacfcd861688ffc1c58fdb2"} device-1 | {"level":"info","message":"PATCH /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33 200 46ms","method":"PATCH","requestID":"170857b1eaacfcd861688ffc1c58fdb2","responseTime":46,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMH0.Ju7O0s6Yam6qLNXkvSDQFHgAlPa-KpPSUiW2rhgWaZw","level":"info","message":"auth send jwt","requestID":"59ba941d81116e2303a378e271659d29"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"59ba941d81116e2303a378e271659d29","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"59ba941d81116e2303a378e271659d29"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.842097,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"59ba941d81116e2303a378e271659d29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138800,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMH0.Ju7O0s6Yam6qLNXkvSDQFHgAlPa-KpPSUiW2rhgWaZw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59ba941d81116e2303a378e271659d29","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"59ba941d81116e2303a378e271659d29"} gateway-1 | {"time_local":"16/Jul/2024:14:06:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"59ba941d81116e2303a378e271659d29"} device-1 | {"level":"info","message":"POST /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/websocket 200 23ms","method":"POST","requestID":"59ba941d81116e2303a378e271659d29","responseTime":23,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb12647744426cf426bc51eca7fe4704","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fb12647744426cf426bc51eca7fe4704","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fb12647744426cf426bc51eca7fe4704"} device-1 | {"level":"info","message":"OPTIONS /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/websocket 200 1ms","method":"OPTIONS","requestID":"fb12647744426cf426bc51eca7fe4704","responseTime":1,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs","level":"info","message":"auth send jwt","requestID":"11834fe633ac2fe7baee048d6893e7b0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"11834fe633ac2fe7baee048d6893e7b0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"11834fe633ac2fe7baee048d6893e7b0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.150803,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"11834fe633ac2fe7baee048d6893e7b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11834fe633ac2fe7baee048d6893e7b0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"11834fe633ac2fe7baee048d6893e7b0"} gateway-1 | {"time_local":"16/Jul/2024:14:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.042","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"11834fe633ac2fe7baee048d6893e7b0"} device-1 | {"level":"info","message":"POST /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/websocket 200 35ms","method":"POST","requestID":"11834fe633ac2fe7baee048d6893e7b0","responseTime":35,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs","level":"info","message":"auth send jwt","requestID":"9ccb2d68b730df6245d6c347dc0f0a10"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ccb2d68b730df6245d6c347dc0f0a10","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ccb2d68b730df6245d6c347dc0f0a10"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.194186,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9ccb2d68b730df6245d6c347dc0f0a10","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ccb2d68b730df6245d6c347dc0f0a10","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.621275137Z"}]},"request_id":"d78a411a-4bdf-4c62-a647-246d284c2ccf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.6948106} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9ccb2d68b730df6245d6c347dc0f0a10","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ccb2d68b730df6245d6c347dc0f0a10"} gateway-1 | {"time_local":"16/Jul/2024:14:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ccb2d68b730df6245d6c347dc0f0a10"} device-1 | {"level":"info","message":"GET /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33? 200 19ms","method":"GET","requestID":"9ccb2d68b730df6245d6c347dc0f0a10","responseTime":19,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs","level":"info","message":"auth send jwt","requestID":"19f6597042ec18f22bb7babe0bd2113c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"19f6597042ec18f22bb7babe0bd2113c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"19f6597042ec18f22bb7babe0bd2113c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158624,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"19f6597042ec18f22bb7babe0bd2113c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"19f6597042ec18f22bb7babe0bd2113c","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.672038317Z"}]},"request_id":"0a236e0f-fe99-4a3c-afd7-fec7155ef945","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.7219946} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"19f6597042ec18f22bb7babe0bd2113c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"19f6597042ec18f22bb7babe0bd2113c"} gateway-1 | {"time_local":"16/Jul/2024:14:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19f6597042ec18f22bb7babe0bd2113c"} device-1 | {"level":"info","message":"GET /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605? 200 21ms","method":"GET","requestID":"19f6597042ec18f22bb7babe0bd2113c","responseTime":21,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs","level":"info","message":"auth send jwt","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.261705,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Attempting to run experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Attempting to book experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully booked experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a06760f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a067af10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.332474,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a06760f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a06760f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657902,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a067af10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a067af10-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.621275137Z"}]},"request_id":"42ed2e43-9583-4a44-b51a-e242d3fd3a43","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.8039856} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a06760f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.672038317Z"}]},"request_id":"d611d628-d0a9-418b-aa7d-a635f6ded568","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.8057818} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a067af10-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a06760f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33? 200 20ms","method":"GET","requestID":"a06760f0-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a067af10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605? 200 20ms","method":"GET","requestID":"a067af10-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Setting up experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully locked booking for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Attempting to update booking for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully updated booking for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully set up experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0725d70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a072ab90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a07320c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.955003,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a0725d70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a0725d70-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952282,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully running experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a072ab90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a072ab90-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.881096,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30b0d501-e6f4-413d-ba91-8a2d0c211a4d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.8769255} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.621275137Z"}]},"request_id":"5c105819-eafe-434d-88ab-58998b696f44","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.8774157} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"a0725d70-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a07320c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"a07320c0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.672038317Z"}]},"request_id":"15be3092-4771-4afc-b36f-8d4b0a5e5d74","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.8828032} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a072ab90-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0725d70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33? 200 29ms","method":"GET","requestID":"a0725d70-437c-11ef-8659-f5877ab12720","responseTime":29,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a07320c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling 200 26ms","method":"POST","requestID":"a07320c0-437c-11ef-8659-f5877ab12720","responseTime":26,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a072ab90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605? 200 31ms","method":"GET","requestID":"a072ab90-437c-11ef-8659-f5877ab12720","responseTime":31,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0778d90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a077dbb0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F73e31007-4849-4c09-9112-74a3ba15fe00#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F73e31007-4849-4c09-9112-74a3ba15fe00","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a33e7a23-7a4f-4f80-a552-3d929415f7b9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.90114} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d7321fad-3022-4e39-8066-8459f3cc54e7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.9013355} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f68603d1-d207-4172-9785-fd8ac40b59b9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.9042099} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4bf868c5-b955-4477-9e90-92c70790fcbd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.9053385} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.737253,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.335739,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a0778d90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a0778d90-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a077dbb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a077dbb0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0778d90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling 200 16ms","method":"POST","requestID":"a0778d90-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a077dbb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling 200 16ms","method":"POST","requestID":"a077dbb0-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} gateway-1 | {"time_local":"16/Jul/2024:14:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a07ae8f0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs","level":"info","message":"auth send jwt","requestID":"9d44e87c3b8c9ca95b524e14f794e11c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9d44e87c3b8c9ca95b524e14f794e11c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9d44e87c3b8c9ca95b524e14f794e11c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2a86d6e-3fd0-4708-a963-0f0ef8dda987","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.9243124} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.62008,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a07ae8f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a07ae8f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60070","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912565,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9d44e87c3b8c9ca95b524e14f794e11c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d44e87c3b8c9ca95b524e14f794e11c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a07ae8f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling 200 11ms","method":"POST","requestID":"a07ae8f0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.621275137Z"}]},"request_id":"052b53f3-a749-424b-9546-5b33765e7c20","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.9309897} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Building connection plan","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"f8ae465a-48d2-4cb8-bc8d-bba44de4d879"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"a019b39f-fb86-45d3-b6e8-bccc15a39a6c"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"aa070e09-e498-4814-b28f-8807da27a3a1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9d44e87c3b8c9ca95b524e14f794e11c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9d44e87c3b8c9ca95b524e14f794e11c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} gateway-1 | {"time_local":"16/Jul/2024:14:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d44e87c3b8c9ca95b524e14f794e11c"} device-1 | {"level":"info","message":"GET /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33? 200 15ms","method":"GET","requestID":"9d44e87c3b8c9ca95b524e14f794e11c","responseTime":15,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.225221,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a07d32e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs","level":"info","message":"auth send jwt","requestID":"a5c48dc893fb49b1ceeed3159becb11e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a5c48dc893fb49b1ceeed3159becb11e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5c48dc893fb49b1ceeed3159becb11e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.35864,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a5c48dc893fb49b1ceeed3159becb11e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138801,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwMX0.8INthlsjxvc-Ld38nkFFAIC9TXx8P9AWZ-gUVa2wjqs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5c48dc893fb49b1ceeed3159becb11e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"7ea378aa-295c-4431-8e8c-7d5d54e7d0e5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.951255} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63496559-fbc9-4cf9-abb5-d681447874cd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.9514127} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:39.672038317Z"}]},"request_id":"764a5919-3e5d-4fa1-933d-88acfe9f135d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138801.9525256} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a5c48dc893fb49b1ceeed3159becb11e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5c48dc893fb49b1ceeed3159becb11e"} gateway-1 | {"time_local":"16/Jul/2024:14:06:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a5c48dc893fb49b1ceeed3159becb11e"} device-1 | {"level":"info","message":"GET /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605? 200 19ms","method":"GET","requestID":"a5c48dc893fb49b1ceeed3159becb11e","responseTime":19,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854'","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854'","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 39ms","method":"POST","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720","responseTime":39,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a07d32e0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"dfb387a0c4bb22176cf1fa76ae21a0f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a0879320-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:42Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"007a072a-c44b-413f-b6b9-73c91415765d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138802.006913} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.491866,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a0879320-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0879320-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a0879320-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling 200 9ms","method":"POST","requestID":"a0879320-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a08940d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:42Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9f179a5-9e9e-49f8-959f-250fbcfea827","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138802.0181656} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.542193,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a08940d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a08940d0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a08940d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling 200 10ms","method":"POST","requestID":"a08940d0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling"} device-1 | {"data":{"peerconnection":"6151b9b8-319d-4f2e-bd1a-31f5e5d63854","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6151b9b8-319d-4f2e-bd1a-31f5e5d63854","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fc336de4e21c091f57f2dc226097c3ef","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fc336de4e21c091f57f2dc226097c3ef","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854"}}},"level":"info","message":"received a callback","requestID":"fc336de4e21c091f57f2dc226097c3ef"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"fc336de4e21c091f57f2dc226097c3ef","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"fc336de4e21c091f57f2dc226097c3ef"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605'"} device-1 | {"data":{"peerconnection":"6151b9b8-319d-4f2e-bd1a-31f5e5d63854","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"6151b9b8-319d-4f2e-bd1a-31f5e5d63854","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6151b9b8-319d-4f2e-bd1a-31f5e5d63854","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"34d171e701d589a0d092876b637d8102","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"34d171e701d589a0d092876b637d8102","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854"}}},"level":"info","message":"received a callback","requestID":"34d171e701d589a0d092876b637d8102"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a1ce6b00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6151b9b8-319d-4f2e-bd1a-31f5e5d63854","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5052df38-36f5-48bd-bb9d-5bccb19d5eaa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.1521678} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.006621,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a1ce6b00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a1ce6b00-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a1ce6b00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854 200 14ms","method":"GET","requestID":"a1ce6b00-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"34d171e701d589a0d092876b637d8102","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"34d171e701d589a0d092876b637d8102"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a1d48580-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11957a49-3d11-4961-90ec-a5df0d239f7f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.1908083} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.752422,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a1d48580-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a1d48580-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a1d48580-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling 200 13ms","method":"POST","requestID":"a1d48580-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a1d71d90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73b0b756-7536-44d9-9d6c-f492d82d8cb7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.2082684} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.854162,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a1d71d90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a1d71d90-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a1d71d90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling 200 15ms","method":"POST","requestID":"a1d71d90-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g","level":"info","message":"auth send jwt","requestID":"c4067e151485191acac2f3c43b95de91"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4067e151485191acac2f3c43b95de91","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/73e31007-4849-4c09-9112-74a3ba15fe00","requestID":"c4067e151485191acac2f3c43b95de91"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.184267,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c4067e151485191acac2f3c43b95de91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138804,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4067e151485191acac2f3c43b95de91","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/73e31007-4849-4c09-9112-74a3ba15fe00","requestID":"c4067e151485191acac2f3c43b95de91"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/73e31007-4849-4c09-9112-74a3ba15fe00 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4067e151485191acac2f3c43b95de91"} experiment-1 | {"level":"info","message":"GET /experiments/73e31007-4849-4c09-9112-74a3ba15fe00 200 18ms","method":"GET","requestID":"c4067e151485191acac2f3c43b95de91","responseTime":18,"status":200,"url":"/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g","level":"info","message":"auth send jwt","requestID":"6251a6232f26c460bbc7de4c4a913f3d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6251a6232f26c460bbc7de4c4a913f3d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/73e31007-4849-4c09-9112-74a3ba15fe00","requestID":"6251a6232f26c460bbc7de4c4a913f3d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.1592,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6251a6232f26c460bbc7de4c4a913f3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138804,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6251a6232f26c460bbc7de4c4a913f3d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Attempting to finish experiment","requestID":"6251a6232f26c460bbc7de4c4a913f3d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a1f0e720-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.225699,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a1f0e720-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138804,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a1f0e720-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6151b9b8-319d-4f2e-bd1a-31f5e5d63854","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"48ee2e7c7944de07b7999ad3b3fd64de","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"48ee2e7c7944de07b7999ad3b3fd64de","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6151b9b8-319d-4f2e-bd1a-31f5e5d63854': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6151b9b8-319d-4f2e-bd1a-31f5e5d63854","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"98b6528e-f4b1-42b0-86b8-876d65a5ee4c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.399044} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"75933441fbd0cefab2f9a9d2679df838","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"75933441fbd0cefab2f9a9d2679df838","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854"}}},"level":"info","message":"received a callback","requestID":"48ee2e7c7944de07b7999ad3b3fd64de"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17c29c01-21cd-4dfe-888b-906782d3ee71","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.4005246} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854"}}},"level":"info","message":"received a callback","requestID":"75933441fbd0cefab2f9a9d2679df838"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"a1f0e720-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"6151b9b8-319d-4f2e-bd1a-31f5e5d63854","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a1f0e720-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854 204 57ms","method":"DELETE","requestID":"a1f0e720-437c-11ef-8659-f5877ab12720","responseTime":57,"status":204,"url":"/peerconnections/6151b9b8-319d-4f2e-bd1a-31f5e5d63854"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"},"level":"info","message":"Successfully finished experiment","requestID":"6251a6232f26c460bbc7de4c4a913f3d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a1fe2d90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdb6da4cf-e264-44e7-9ab7-100ef47a4b33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fe19389-a09a-4d9b-a6ff-5f11ef941014","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.4644885} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.429316,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a1fe2d90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a1fe2d90-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a1fe2d90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F73e31007-4849-4c09-9112-74a3ba15fe00': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F73e31007-4849-4c09-9112-74a3ba15fe00","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"c3e612cb-e943-42bf-8607-dbd5dd28ac78","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.4728966} device-1 | {"level":"info","message":"POST /devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling 200 16ms","method":"POST","requestID":"a1fe2d90-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4aaf7da7-9d9b-4337-8844-5288c3e30fb2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.4733562} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"6251a6232f26c460bbc7de4c4a913f3d","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a20161e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F89b2f160-fff8-4c5f-beaf-a4c5b9461605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7684272f-64ea-418d-afca-ae687610f884","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.4866252} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.097679,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a20161e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a20161e0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a20161e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling 200 16ms","method":"POST","requestID":"a20161e0-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/73e31007-4849-4c09-9112-74a3ba15fe00","requestID":"6251a6232f26c460bbc7de4c4a913f3d"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/73e31007-4849-4c09-9112-74a3ba15fe00 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.202","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6251a6232f26c460bbc7de4c4a913f3d"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2990","request_time":"4.304","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0944f66e8615f6041e6ad00df2820d68"} experiment-1 | {"level":"info","message":"DELETE /experiments/73e31007-4849-4c09-9112-74a3ba15fe00 204 199ms","method":"DELETE","requestID":"6251a6232f26c460bbc7de4c4a913f3d","responseTime":199,"status":204,"url":"/experiments/73e31007-4849-4c09-9112-74a3ba15fe00"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 155ms","method":"POST","requestID":"48ee2e7c7944de07b7999ad3b3fd64de","responseTime":155,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch","requestID":"48ee2e7c7944de07b7999ad3b3fd64de"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g","level":"info","message":"auth send jwt","requestID":"51504f547544c1f4a3aba2394bbbaf3a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"51504f547544c1f4a3aba2394bbbaf3a","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 156ms","method":"POST","requestID":"75933441fbd0cefab2f9a9d2679df838","responseTime":156,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch","requestID":"75933441fbd0cefab2f9a9d2679df838"} device-1 | {"level":"info","message":"postDevices called","requestID":"51504f547544c1f4a3aba2394bbbaf3a"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2501","request_time":"2.906","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e2238a65b17e5986ac07f07cecaf7088"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/db6da4cf-e264-44e7-9ab7-100ef47a4b33' closed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.979491,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"51504f547544c1f4a3aba2394bbbaf3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138804,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"51504f547544c1f4a3aba2394bbbaf3a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/89b2f160-fff8-4c5f-beaf-a4c5b9461605' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"18f55037-fc84-4417-8899-202b6a2865af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.5820158} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51504f547544c1f4a3aba2394bbbaf3a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"418babad-3978-4259-859d-53acc94188f8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.5886304} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"51504f547544c1f4a3aba2394bbbaf3a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"273ce4cb-cc2b-412e-8ff7-d3d7701663f8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.5989282} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4db53a8d-19cf-4379-995d-286af00fb847","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.5991113} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"51504f547544c1f4a3aba2394bbbaf3a","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.598911943Z"}]},"request_id":"317b7098-8a42-4620-9db1-2dbd3f764419","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.6045904} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51504f547544c1f4a3aba2394bbbaf3a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"51504f547544c1f4a3aba2394bbbaf3a"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"51504f547544c1f4a3aba2394bbbaf3a","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51504f547544c1f4a3aba2394bbbaf3a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g","level":"info","message":"auth send jwt","requestID":"76e54a8a7546d502b913f66a5ccf512c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76e54a8a7546d502b913f66a5ccf512c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"76e54a8a7546d502b913f66a5ccf512c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.846277,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"76e54a8a7546d502b913f66a5ccf512c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138804,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNH0.-f1NauS40l6nLVXOGllsL5LihgdbYhZ6D2DSwg5F7-g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76e54a8a7546d502b913f66a5ccf512c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9de31516-87e9-4d7e-a322-57cbe78daffe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.6310391} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76e54a8a7546d502b913f66a5ccf512c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae31c8ae-e096-4bb3-81d2-0ecc8f483cdc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.636515} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"76e54a8a7546d502b913f66a5ccf512c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"dcb34095-778d-4450-93bd-6ff169599586","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.6521454} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c41ee9d-e9d7-4e90-b597-2bb2dfddf9bd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.6523085} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"76e54a8a7546d502b913f66a5ccf512c","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.652117794Z"}]},"request_id":"760e39ce-9e0d-4cf8-8d52-44978a5d11f6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138804.6575744} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76e54a8a7546d502b913f66a5ccf512c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"76e54a8a7546d502b913f66a5ccf512c"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"76e54a8a7546d502b913f66a5ccf512c","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76e54a8a7546d502b913f66a5ccf512c"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8310cb629496c8fe2fda5cd692d4cf26","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8310cb629496c8fe2fda5cd692d4cf26","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5f46a829-fbfb-4016-a440-6140db2413d4/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8310cb629496c8fe2fda5cd692d4cf26"} device-1 | {"level":"info","message":"OPTIONS /devices/5f46a829-fbfb-4016-a440-6140db2413d4/websocket 200 0ms","method":"OPTIONS","requestID":"8310cb629496c8fe2fda5cd692d4cf26","responseTime":0,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e3ca4234658ac68a19c4d9c41917069","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3e3ca4234658ac68a19c4d9c41917069","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3e3ca4234658ac68a19c4d9c41917069"} device-1 | {"level":"info","message":"OPTIONS /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/websocket 200 1ms","method":"OPTIONS","requestID":"3e3ca4234658ac68a19c4d9c41917069","responseTime":1,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM","level":"info","message":"auth send jwt","requestID":"3820084d459d4ded10e8f074b9f007dc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3820084d459d4ded10e8f074b9f007dc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3820084d459d4ded10e8f074b9f007dc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM","level":"info","message":"auth send jwt","requestID":"4d438c3beaece500d6787c94768a0e25"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d438c3beaece500d6787c94768a0e25","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.416779,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4d438c3beaece500d6787c94768a0e25"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3820084d459d4ded10e8f074b9f007dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3820084d459d4ded10e8f074b9f007dc","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.296163,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4d438c3beaece500d6787c94768a0e25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d438c3beaece500d6787c94768a0e25","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3820084d459d4ded10e8f074b9f007dc"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5f46a829-fbfb-4016-a440-6140db2413d4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.048","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3820084d459d4ded10e8f074b9f007dc"} device-1 | {"level":"info","message":"POST /devices/5f46a829-fbfb-4016-a440-6140db2413d4/websocket 200 39ms","method":"POST","requestID":"3820084d459d4ded10e8f074b9f007dc","responseTime":39,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4d438c3beaece500d6787c94768a0e25"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.052","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4d438c3beaece500d6787c94768a0e25"} device-1 | {"level":"info","message":"POST /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/websocket 200 45ms","method":"POST","requestID":"4d438c3beaece500d6787c94768a0e25","responseTime":45,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM","level":"info","message":"auth send jwt","requestID":"55a20c69a85654dc12bab17b32c25d85"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"55a20c69a85654dc12bab17b32c25d85","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55a20c69a85654dc12bab17b32c25d85"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.147696,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"55a20c69a85654dc12bab17b32c25d85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"55a20c69a85654dc12bab17b32c25d85","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.598911943Z"}]},"request_id":"22df8140-999e-46b5-b3d3-9b62c31d1c03","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.7253003} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"55a20c69a85654dc12bab17b32c25d85","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55a20c69a85654dc12bab17b32c25d85"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"55a20c69a85654dc12bab17b32c25d85"} device-1 | {"level":"info","message":"GET /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c? 200 17ms","method":"GET","requestID":"55a20c69a85654dc12bab17b32c25d85","responseTime":17,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM","level":"info","message":"auth send jwt","requestID":"d115de555fe811cf43116bd98d819ef4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d115de555fe811cf43116bd98d819ef4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d115de555fe811cf43116bd98d819ef4"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.375283,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d115de555fe811cf43116bd98d819ef4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d115de555fe811cf43116bd98d819ef4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.652117794Z"}]},"request_id":"d8e5667a-ec07-4101-85fb-d681470a167a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.749368} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d115de555fe811cf43116bd98d819ef4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d115de555fe811cf43116bd98d819ef4"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5f46a829-fbfb-4016-a440-6140db2413d4? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d115de555fe811cf43116bd98d819ef4"} device-1 | {"level":"info","message":"GET /devices/5f46a829-fbfb-4016-a440-6140db2413d4? 200 17ms","method":"GET","requestID":"d115de555fe811cf43116bd98d819ef4","responseTime":17,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM","level":"info","message":"auth send jwt","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.172659,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2f0fc51fdbda17ff37e4e17ec66697f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Attempting to run experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Attempting to book experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully booked experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a364e980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a36537a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.754354,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a364e980-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a364e980-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.38542,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a36537a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"a36537a0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.598911943Z"}]},"request_id":"c495ae87-a705-4acd-bd08-b8fdf1a70930","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.8219736} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a364e980-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.652117794Z"}]},"request_id":"524835d3-1133-4d0a-a1f9-446a94c46e24","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.8285034} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a364e980-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a36537a0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c? 200 22ms","method":"GET","requestID":"a364e980-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a36537a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/5f46a829-fbfb-4016-a440-6140db2413d4? 200 25ms","method":"GET","requestID":"a36537a0-437c-11ef-8659-f5877ab12720","responseTime":25,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Setting up experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully set up experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a37193b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a3722ff0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918735,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a37193b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a37193b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.056606,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a3722ff0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully running experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a3722ff0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a373dda0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.598911943Z"}]},"request_id":"690da1d1-4200-4903-9412-597495b91b69","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9059033} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"a37193b0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.652117794Z"}]},"request_id":"5d35bc17-8685-4bf8-a54f-9e6f8aaadc1f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9096563} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"a3722ff0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a37193b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} device-1 | {"level":"info","message":"GET /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c? 200 25ms","method":"GET","requestID":"a37193b0-437c-11ef-8659-f5877ab12720","responseTime":25,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5a12ebc-6fdc-4992-bbd5-23fcb8512a11","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9176958} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.93333,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a373dda0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a3722ff0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a373dda0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/5f46a829-fbfb-4016-a440-6140db2413d4? 200 26ms","method":"GET","requestID":"a3722ff0-437c-11ef-8659-f5877ab12720","responseTime":26,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff080687f-1452-4765-a8cb-6b446f1b2bbc#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff080687f-1452-4765-a8cb-6b446f1b2bbc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"e9913a72-5837-4704-b66f-9331c5036663","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9244392} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3769cc0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23ab82b7-a141-4836-8faa-982c025af465","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9248583} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a373dda0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling 200 22ms","method":"POST","requestID":"a373dda0-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62ec7c9c-dd94-4021-9ab7-24001d22ed9d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9306717} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.639572,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a3769cc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a3769cc0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3769cc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling 200 12ms","method":"POST","requestID":"a3769cc0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"777","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a37934d0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM","level":"info","message":"auth send jwt","requestID":"00647957113af7fe1cb918abc996c623"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"00647957113af7fe1cb918abc996c623","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00647957113af7fe1cb918abc996c623"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f0e8200-9660-4f3b-b4c4-6fa35f60615c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9471207} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.632579,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a37934d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a37934d0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937737,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"00647957113af7fe1cb918abc996c623","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00647957113af7fe1cb918abc996c623","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a37934d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling 200 14ms","method":"POST","requestID":"a37934d0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.598911943Z"}]},"request_id":"461c3afd-7b58-406d-985d-fce1b79439fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9562366} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Building connection plan","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00647957113af7fe1cb918abc996c623","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"b9771840-b820-4dbb-8593-befd54f85c82"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"8cee742c-57bf-4cc2-b15c-fee4900b4212"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"4343a423-a60f-4f03-9348-0c6e3fe3454c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00647957113af7fe1cb918abc996c623"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.00657,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"00647957113af7fe1cb918abc996c623"} device-1 | {"level":"info","message":"GET /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c? 200 19ms","method":"GET","requestID":"00647957113af7fe1cb918abc996c623","responseTime":19,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a37c1b00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM","level":"info","message":"auth send jwt","requestID":"ce265959ece0bf8ffc8a4030fae35761"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ce265959ece0bf8ffc8a4030fae35761","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce265959ece0bf8ffc8a4030fae35761"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875887,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce265959ece0bf8ffc8a4030fae35761","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138806,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwNn0.rHRJlhvCe4jfKfbF56UsTxnqB6ZgfpefnjIuz2SskRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce265959ece0bf8ffc8a4030fae35761","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"2e1bbb18-e34c-4f5f-8624-5ea8a38348d4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.977676} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75b237c6-7ace-49d0-b129-d1bb4a45d958","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.9780445} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:44.652117794Z"}]},"request_id":"3349a6dd-d232-4d03-a193-4602c16b5588","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138806.984562} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce265959ece0bf8ffc8a4030fae35761","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f'","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f'","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 38ms","method":"POST","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720","responseTime":38,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce265959ece0bf8ffc8a4030fae35761"} gateway-1 | {"time_local":"16/Jul/2024:14:06:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5f46a829-fbfb-4016-a440-6140db2413d4? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce265959ece0bf8ffc8a4030fae35761"} device-1 | {"level":"info","message":"GET /devices/5f46a829-fbfb-4016-a440-6140db2413d4? 200 27ms","method":"GET","requestID":"ce265959ece0bf8ffc8a4030fae35761","responseTime":27,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a37c1b00-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2f0fc51fdbda17ff37e4e17ec66697f1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a38b8450-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c'"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd82dc72-62a7-452d-8fe4-d800d44bc663","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.0671477} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.453732,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c'"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a38b8450-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a38b8450-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4'"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a38b8450-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling 200 13ms","method":"POST","requestID":"a38b8450-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a38e4370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"982d3301-9abd-4279-a7bc-cbafe8a0a65f","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb85349e-2fba-4d8e-8607-e108d67708fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.085116} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.251626,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a38e4370-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a38e4370-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"14e3a45cd8e9c4d6d7e7840ab64e441b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"14e3a45cd8e9c4d6d7e7840ab64e441b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f"}}},"level":"info","message":"received a callback","requestID":"14e3a45cd8e9c4d6d7e7840ab64e441b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a38e4370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling 200 14ms","method":"POST","requestID":"a38e4370-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"14e3a45cd8e9c4d6d7e7840ab64e441b","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"14e3a45cd8e9c4d6d7e7840ab64e441b"} device-1 | {"data":{"peerconnection":"982d3301-9abd-4279-a7bc-cbafe8a0a65f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"982d3301-9abd-4279-a7bc-cbafe8a0a65f","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"982d3301-9abd-4279-a7bc-cbafe8a0a65f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"83e67a17c9f7fb740f1e37edf7d97d50","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"83e67a17c9f7fb740f1e37edf7d97d50","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f"}}},"level":"info","message":"received a callback","requestID":"83e67a17c9f7fb740f1e37edf7d97d50"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a396f600-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F982d3301-9abd-4279-a7bc-cbafe8a0a65f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30095f17-ee20-41bf-80f9-5a393b39f6c8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.1418355} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.680436,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a396f600-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a396f600-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a396f600-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f 200 10ms","method":"GET","requestID":"a396f600-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"83e67a17c9f7fb740f1e37edf7d97d50","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"83e67a17c9f7fb740f1e37edf7d97d50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a39c2620-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bfa10567-e0b1-475a-8147-113dcbc6d093","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.1754553} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.525017,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a39c2620-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a39c2620-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a39c2620-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling 200 10ms","method":"POST","requestID":"a39c2620-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a39e21f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"691bd932-1057-47a4-8c94-ce4e8a04f3bb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.1878152} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.659159,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a39e21f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a39e21f0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a39e21f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling 200 11ms","method":"POST","requestID":"a39e21f0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc","level":"info","message":"auth send jwt","requestID":"a450924c409c6671fb60a317fe3539ae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a450924c409c6671fb60a317fe3539ae","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","requestID":"a450924c409c6671fb60a317fe3539ae"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.933069,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a450924c409c6671fb60a317fe3539ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138807,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a450924c409c6671fb60a317fe3539ae","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","requestID":"a450924c409c6671fb60a317fe3539ae"} experiment-1 | {"level":"info","message":"GET /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc 200 20ms","method":"GET","requestID":"a450924c409c6671fb60a317fe3539ae","responseTime":20,"status":200,"url":"/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc HTTP/1.1","status": "200","body_bytes_sent":"850","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a450924c409c6671fb60a317fe3539ae"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc","level":"info","message":"auth send jwt","requestID":"408c768975b65ceb0dfa33da2a85bbe6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"408c768975b65ceb0dfa33da2a85bbe6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","requestID":"408c768975b65ceb0dfa33da2a85bbe6"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.247552,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"408c768975b65ceb0dfa33da2a85bbe6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138807,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"408c768975b65ceb0dfa33da2a85bbe6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Attempting to finish experiment","requestID":"408c768975b65ceb0dfa33da2a85bbe6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a3bd42b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.251644,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a3bd42b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138807,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a3bd42b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"982d3301-9abd-4279-a7bc-cbafe8a0a65f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0bc36d59cb4194ab25e4aba515e0bcfd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F982d3301-9abd-4279-a7bc-cbafe8a0a65f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F982d3301-9abd-4279-a7bc-cbafe8a0a65f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"c75bd45d-7c7d-4995-a7de-7c4777914895","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.4118915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04286d9e-962c-4d89-9305-b4b6e8add496","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.4122596} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f"}}},"level":"info","message":"received a callback","requestID":"0bc36d59cb4194ab25e4aba515e0bcfd"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a3bd42b0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0bc36d59cb4194ab25e4aba515e0bcfd","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b1fa4dc6f89f5a96c129b701bac3b63","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9b1fa4dc6f89f5a96c129b701bac3b63","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f"}}},"level":"info","message":"received a callback","requestID":"9b1fa4dc6f89f5a96c129b701bac3b63"} device-1 | {"data":{"peerconnection":"982d3301-9abd-4279-a7bc-cbafe8a0a65f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a3bd42b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f 204 47ms","method":"DELETE","requestID":"a3bd42b0-437c-11ef-8659-f5877ab12720","responseTime":47,"status":204,"url":"/peerconnections/982d3301-9abd-4279-a7bc-cbafe8a0a65f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"},"level":"info","message":"Successfully finished experiment","requestID":"408c768975b65ceb0dfa33da2a85bbe6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3c86640-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa9e9ff41-89cd-4c51-8963-40b9643c323c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"305a55ed-4cb8-4e39-97d1-adb48664528d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.467368} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.468515,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a3c86640-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"a3c86640-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff080687f-1452-4765-a8cb-6b446f1b2bbc': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff080687f-1452-4765-a8cb-6b446f1b2bbc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"93a2bb0b-706c-4e6a-b4ca-0d7e50d596fa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.4700987} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"192a7670-88d5-40ca-ac2b-3e594a59f1b6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.47054} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3c86640-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling 200 16ms","method":"POST","requestID":"a3c86640-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"408c768975b65ceb0dfa33da2a85bbe6","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a3cb4c70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5f46a829-fbfb-4016-a440-6140db2413d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2d6c5d6-d1df-4e88-af0c-a70d5d0ed112","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.4891677} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.614137,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a3cb4c70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a3cb4c70-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a3cb4c70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling 200 17ms","method":"POST","requestID":"a3cb4c70-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/5f46a829-fbfb-4016-a440-6140db2413d4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc","requestID":"408c768975b65ceb0dfa33da2a85bbe6"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"408c768975b65ceb0dfa33da2a85bbe6"} experiment-1 | {"level":"info","message":"DELETE /experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc 204 183ms","method":"DELETE","requestID":"408c768975b65ceb0dfa33da2a85bbe6","responseTime":183,"status":204,"url":"/experiments/f080687f-1452-4765-a8cb-6b446f1b2bbc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"0bc36d59cb4194ab25e4aba515e0bcfd","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"0bc36d59cb4194ab25e4aba515e0bcfd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"9b1fa4dc6f89f5a96c129b701bac3b63","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b1fa4dc6f89f5a96c129b701bac3b63"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc","level":"info","message":"auth send jwt","requestID":"787ab28bc50503a342fb187d02ee357f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"787ab28bc50503a342fb187d02ee357f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"787ab28bc50503a342fb187d02ee357f"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2630","request_time":"0.890","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"15fc7c2f5e2cfc65f1ab0dbdcd2ef53f"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2514","request_time":"0.879","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8a263a8a2ccb194a071e6046076ea3db"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.015929,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"787ab28bc50503a342fb187d02ee357f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138807,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"787ab28bc50503a342fb187d02ee357f","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a9e9ff41-89cd-4c51-8963-40b9643c323c' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5f46a829-fbfb-4016-a440-6140db2413d4' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c4742b45-f0c9-40cb-9f50-d36803ff97c9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.5855474} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"787ab28bc50503a342fb187d02ee357f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62bff084-3828-4bc3-9b16-72051a41e799","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.5906506} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"787ab28bc50503a342fb187d02ee357f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"c5413afc-1e91-4808-9353-a6d4c129d4d2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.6032817} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05720a90-fa29-4b6b-8713-a08a3b760bfc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.6033804} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"787ab28bc50503a342fb187d02ee357f","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.603265480Z"}]},"request_id":"d665b2be-2539-4029-adaf-b9762f27f343","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.6079166} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"787ab28bc50503a342fb187d02ee357f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"787ab28bc50503a342fb187d02ee357f"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"787ab28bc50503a342fb187d02ee357f"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"787ab28bc50503a342fb187d02ee357f","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc","level":"info","message":"auth send jwt","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.747725,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138807,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwN30.q8IhN7S-_YDTDORrIy9xBavfPq1b_31rXDfOg3Yh-zc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3d524e88-af34-4f20-95cf-63fea70590d0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.632612} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f04a344d-a75f-4cd9-995d-f5d3416bab54","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.6396341} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"f4a26458-6a4e-4dc7-a5b9-5474503fe261","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.6532772} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be8f6bd6-06c4-4507-84de-4307059f732c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.6534607} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.653260814Z"}]},"request_id":"ad80706f-25a1-4539-919c-62a8f427daec","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138807.6576567} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c"} gateway-1 | {"time_local":"16/Jul/2024:14:06:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"b4cd50fafe1eb4a6fbc3a7ef5a04090c","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOH0.IiGSvo6u8-cn1I1iQ-qvJzQlSnywvG9Sv9sb2XbKsN0","level":"info","message":"auth send jwt","requestID":"9c4edabd776ef28ee01c61e6bd5ef865"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9c4edabd776ef28ee01c61e6bd5ef865","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9c4edabd776ef28ee01c61e6bd5ef865"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180831,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9c4edabd776ef28ee01c61e6bd5ef865","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138808,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOH0.IiGSvo6u8-cn1I1iQ-qvJzQlSnywvG9Sv9sb2XbKsN0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9c4edabd776ef28ee01c61e6bd5ef865","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.653260814Z"}]},"request_id":"3ac36f16-d7d9-44b4-a072-426ff5427e5c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138808.164025} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c4edabd776ef28ee01c61e6bd5ef865","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3b97644-41eb-4d61-9ac4-9f350a23f1e4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138808.171304} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9c4edabd776ef28ee01c61e6bd5ef865","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.653260814Z"}]},"request_id":"438f38d5-51fb-43d6-aeb5-a03283ebd60b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138808.1837225} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9c4edabd776ef28ee01c61e6bd5ef865","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9c4edabd776ef28ee01c61e6bd5ef865"} gateway-1 | {"time_local":"16/Jul/2024:14:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9c4edabd776ef28ee01c61e6bd5ef865"} device-1 | {"level":"info","message":"PATCH /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f 200 36ms","method":"PATCH","requestID":"9c4edabd776ef28ee01c61e6bd5ef865","responseTime":36,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOH0.IiGSvo6u8-cn1I1iQ-qvJzQlSnywvG9Sv9sb2XbKsN0","level":"info","message":"auth send jwt","requestID":"b1b9defe068e93035a94384aa66dff1c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b1b9defe068e93035a94384aa66dff1c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b1b9defe068e93035a94384aa66dff1c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944776,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b1b9defe068e93035a94384aa66dff1c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138808,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOH0.IiGSvo6u8-cn1I1iQ-qvJzQlSnywvG9Sv9sb2XbKsN0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1b9defe068e93035a94384aa66dff1c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b1b9defe068e93035a94384aa66dff1c"} gateway-1 | {"time_local":"16/Jul/2024:14:06:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b1b9defe068e93035a94384aa66dff1c"} device-1 | {"level":"info","message":"POST /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/websocket 200 22ms","method":"POST","requestID":"b1b9defe068e93035a94384aa66dff1c","responseTime":22,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc661055960fb68884d0da2b10b83b11","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cc661055960fb68884d0da2b10b83b11","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cc661055960fb68884d0da2b10b83b11"} device-1 | {"level":"info","message":"OPTIONS /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/websocket 200 1ms","method":"OPTIONS","requestID":"cc661055960fb68884d0da2b10b83b11","responseTime":1,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k","level":"info","message":"auth send jwt","requestID":"ca46766d0c4bb116899b9c034f578f11"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ca46766d0c4bb116899b9c034f578f11","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ca46766d0c4bb116899b9c034f578f11"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101745,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ca46766d0c4bb116899b9c034f578f11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ca46766d0c4bb116899b9c034f578f11","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ca46766d0c4bb116899b9c034f578f11"} gateway-1 | {"time_local":"16/Jul/2024:14:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ca46766d0c4bb116899b9c034f578f11"} device-1 | {"level":"info","message":"POST /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/websocket 200 23ms","method":"POST","requestID":"ca46766d0c4bb116899b9c034f578f11","responseTime":23,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k","level":"info","message":"auth send jwt","requestID":"3b996a1d7db82f49160dc96a8191ef07"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"3b996a1d7db82f49160dc96a8191ef07","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b996a1d7db82f49160dc96a8191ef07"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.44958,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3b996a1d7db82f49160dc96a8191ef07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3b996a1d7db82f49160dc96a8191ef07","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.603265480Z"}]},"request_id":"c45aae71-ce55-4650-b39b-a02f53127356","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.762264} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b996a1d7db82f49160dc96a8191ef07","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b996a1d7db82f49160dc96a8191ef07"} device-1 | {"level":"info","message":"GET /devices/18c3746f-8ebd-4c63-88cb-a0622263306a? 200 19ms","method":"GET","requestID":"3b996a1d7db82f49160dc96a8191ef07","responseTime":19,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/18c3746f-8ebd-4c63-88cb-a0622263306a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b996a1d7db82f49160dc96a8191ef07"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k","level":"info","message":"auth send jwt","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.730778,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f4b55fc9df45a1f8a7478e1d01ce7770","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.653260814Z"}]},"request_id":"7705b017-6ca6-4df1-8656-3924e3d0556b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.790512} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770"} gateway-1 | {"time_local":"16/Jul/2024:14:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770"} device-1 | {"level":"info","message":"GET /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f? 200 20ms","method":"GET","requestID":"f4b55fc9df45a1f8a7478e1d01ce7770","responseTime":20,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k","level":"info","message":"auth send jwt","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"81966f0f5c93c9be76dd0c370625bfa8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.362122,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"81966f0f5c93c9be76dd0c370625bfa8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"81966f0f5c93c9be76dd0c370625bfa8","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Attempting to run experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Attempting to book experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully booked experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5353cb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5358ad0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634289,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a5353cb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a5353cb0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.89333,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a5358ad0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5358ad0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.603265480Z"}]},"request_id":"5bdbb26b-10fb-451e-99e6-5d41d6d0e8a0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.8655355} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a5353cb0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.653260814Z"}]},"request_id":"d7473e71-49e4-42bf-872d-bafd31196666","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.867392} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a5358ad0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5353cb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/18c3746f-8ebd-4c63-88cb-a0622263306a? 200 25ms","method":"GET","requestID":"a5353cb0-437c-11ef-8659-f5877ab12720","responseTime":25,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5358ad0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f? 200 24ms","method":"GET","requestID":"a5358ad0-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Setting up experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully set up experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a53f00b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a53f75e0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully running experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a53feb10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.846502,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a53f00b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a53f00b0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.70566,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a53f75e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a53f75e0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"717ebef3-4f25-4666-bac2-a286da98f15f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9309013} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.653260814Z"}]},"request_id":"be078a5c-7bee-4f5a-ba32-3328bc258657","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.931819} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.603265480Z"}]},"request_id":"006d47c6-a9f9-4c59-892f-d0b402ba8fbf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.93269} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.650228,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a53feb10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a53feb10-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a53f75e0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a53f00b0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1ea3bd7c-c405-4b58-8859-58f942163cd7#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1ea3bd7c-c405-4b58-8859-58f942163cd7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"6edb882e-bd9d-4dea-b220-91b81dcf6581","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.941373} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a53feb10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc3dc8e0-c39e-4a78-bca2-bf4e148bccc1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.941595} device-1 | {"level":"info","message":"POST /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling 200 21ms","method":"POST","requestID":"a53feb10-437c-11ef-8659-f5877ab12720","responseTime":21,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a53f75e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f? 200 25ms","method":"GET","requestID":"a53f75e0-437c-11ef-8659-f5877ab12720","responseTime":25,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"81966f0f5c93c9be76dd0c370625bfa8","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a53f00b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/18c3746f-8ebd-4c63-88cb-a0622263306a? 200 29ms","method":"GET","requestID":"a53f00b0-437c-11ef-8659-f5877ab12720","responseTime":29,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5436d80-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43fff75a-c469-4f5c-b46a-2f90b33c5bb0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9497862} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.813863,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5447ef0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a5436d80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a5436d80-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} gateway-1 | {"time_local":"16/Jul/2024:14:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"81966f0f5c93c9be76dd0c370625bfa8","responseTime":149,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5436d80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling 200 11ms","method":"POST","requestID":"a5436d80-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bfaabcc-f136-4e1f-a03e-70b4f7dde057","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9561155} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.67949,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a5447ef0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a5447ef0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k","level":"info","message":"auth send jwt","requestID":"b42a04f036df40d99f16c8d95c1675bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b42a04f036df40d99f16c8d95c1675bc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b42a04f036df40d99f16c8d95c1675bc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5447ef0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling 200 11ms","method":"POST","requestID":"a5447ef0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.309783,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5467ac0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b42a04f036df40d99f16c8d95c1675bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b42a04f036df40d99f16c8d95c1675bc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.603265480Z"}]},"request_id":"47239e60-1dd9-4a1a-b62d-53a7f6d8edd0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9700987} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"320ccd19-3c2c-4570-832d-2f06867c478b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9702194} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b42a04f036df40d99f16c8d95c1675bc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.315482,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a5467ac0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5467ac0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b42a04f036df40d99f16c8d95c1675bc"} gateway-1 | {"time_local":"16/Jul/2024:14:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/18c3746f-8ebd-4c63-88cb-a0622263306a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b42a04f036df40d99f16c8d95c1675bc"} device-1 | {"level":"info","message":"GET /devices/18c3746f-8ebd-4c63-88cb-a0622263306a? 200 15ms","method":"GET","requestID":"b42a04f036df40d99f16c8d95c1675bc","responseTime":15,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5467ac0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling 200 12ms","method":"POST","requestID":"a5467ac0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Building connection plan","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"1fe40da2-bba7-40cb-82ae-200746c7d287"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"c3e58386-97d3-4c0d-93c9-2630300cc060"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"1b12a6f4-e9d9-4951-98c2-9dacca013235"}]},"level":"info","message":"Built pairwise service configurations","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k","level":"info","message":"auth send jwt","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.592149,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a548c4b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42324","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759549,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138809,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgwOX0.-3U9GP7HLSjd0ukN44JTB4HRLaxwBVHHNsWEkj_UE8k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:47.653260814Z"}]},"request_id":"8f153ea0-0fac-4322-b7b0-5d42f80c6766","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9890215} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb"} gateway-1 | {"time_local":"16/Jul/2024:14:06:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb"} device-1 | {"level":"info","message":"GET /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f? 200 12ms","method":"GET","requestID":"bb2b4e9d0102ff6e2a9ad2ddc089eecb","responseTime":12,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"041c5ddc-00a8-41e7-b26d-28f1ec9a8fde","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9929311} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3810332-95b2-4843-96fb-995c5257256f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138809.9932024} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea'","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea'","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a548c4b0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"81966f0f5c93c9be76dd0c370625bfa8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5515030-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:50Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23b7bcef-8aec-4fa0-a09b-6486715f20fe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138810.0397465} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.613846,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a5515030-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5515030-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5515030-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling 200 9ms","method":"POST","requestID":"a5515030-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a552fde0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:50Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68419cfe-138b-4bc2-ae7b-63748da95d4f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138810.0505538} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.292153,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a552fde0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a552fde0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a552fde0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling 200 9ms","method":"POST","requestID":"a552fde0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling"} device-1 | {"data":{"peerconnection":"c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"85f867f02863a8bd207572db58ac49c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"85f867f02863a8bd207572db58ac49c1","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea"}}},"level":"info","message":"received a callback","requestID":"85f867f02863a8bd207572db58ac49c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"85f867f02863a8bd207572db58ac49c1","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"85f867f02863a8bd207572db58ac49c1"} device-1 | {"data":{"peerconnection":"c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f5d681b16ac9c617fda12bb91315fbc1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f5d681b16ac9c617fda12bb91315fbc1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea"}}},"level":"info","message":"received a callback","requestID":"f5d681b16ac9c617fda12bb91315fbc1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a69ce300-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc359206-c994-4906-9620-0cd103e62e8b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.2156622} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.275259,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a69ce300-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a69ce300-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a69ce300-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea 200 13ms","method":"GET","requestID":"a69ce300-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"f5d681b16ac9c617fda12bb91315fbc1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"f5d681b16ac9c617fda12bb91315fbc1","responseTime":44,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6a21320-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d649cb0-cc5b-4e37-a3e9-676c237b7630","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.247791} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.37262,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a6a21320-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a6a21320-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6a21320-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling 200 11ms","method":"POST","requestID":"a6a21320-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6a40ef0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed397888-da18-4f00-92cc-b7dd73ddd83e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.261003} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.872566,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a6a40ef0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a6a40ef0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6a40ef0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling 200 12ms","method":"POST","requestID":"a6a40ef0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4","level":"info","message":"auth send jwt","requestID":"13b95e9af5da0618986b5de5699b323b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"13b95e9af5da0618986b5de5699b323b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","requestID":"13b95e9af5da0618986b5de5699b323b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.234727,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"13b95e9af5da0618986b5de5699b323b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138812,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13b95e9af5da0618986b5de5699b323b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","requestID":"13b95e9af5da0618986b5de5699b323b"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13b95e9af5da0618986b5de5699b323b"} experiment-1 | {"level":"info","message":"GET /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7 200 17ms","method":"GET","requestID":"13b95e9af5da0618986b5de5699b323b","responseTime":17,"status":200,"url":"/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4","level":"info","message":"auth send jwt","requestID":"d26fcd8b7526856ad907afa561d005a3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d26fcd8b7526856ad907afa561d005a3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","requestID":"d26fcd8b7526856ad907afa561d005a3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.324917,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d26fcd8b7526856ad907afa561d005a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138812,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d26fcd8b7526856ad907afa561d005a3","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Attempting to finish experiment","requestID":"d26fcd8b7526856ad907afa561d005a3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a6cdb700-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.259033,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a6cdb700-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138812,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a6cdb700-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2380c6a49d856521323f3109da94da84","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2380c6a49d856521323f3109da94da84","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1efa6022c977f6c1e49b48fed28f7a5c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1efa6022c977f6c1e49b48fed28f7a5c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc2e8ce2a-e8d0-41ae-833e-3abd41bef4ea': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"3790efd0-af23-42c1-a9df-c639bb4c0386","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.5548322} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea"}}},"level":"info","message":"received a callback","requestID":"2380c6a49d856521323f3109da94da84"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c205b890-cd0b-4827-b534-c8e21aa999ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.5551977} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea"}}},"level":"info","message":"received a callback","requestID":"1efa6022c977f6c1e49b48fed28f7a5c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"a6cdb700-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a6cdb700-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea 204 46ms","method":"DELETE","requestID":"a6cdb700-437c-11ef-8659-f5877ab12720","responseTime":46,"status":204,"url":"/peerconnections/c2e8ce2a-e8d0-41ae-833e-3abd41bef4ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"},"level":"info","message":"Successfully finished experiment","requestID":"d26fcd8b7526856ad907afa561d005a3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6d7f030-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18c3746f-8ebd-4c63-88cb-a0622263306a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75d245d0-eabb-459c-bf94-61c94ad40294","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.6009853} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.937578,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a6d7f030-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a6d7f030-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6d7f030-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling 200 11ms","method":"POST","requestID":"a6d7f030-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/18c3746f-8ebd-4c63-88cb-a0622263306a/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1ea3bd7c-c405-4b58-8859-58f942163cd7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1ea3bd7c-c405-4b58-8859-58f942163cd7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"95ed2d14-57ce-4750-adb0-410e84ee08c3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.6069775} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cf058c1-6b2b-4734-8cde-e18e6a7234f7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.6072834} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6d9ec00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"d26fcd8b7526856ad907afa561d005a3","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5c4f1003-a579-474d-b4e4-dedd01c8394f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"403f73bc-6fb4-49d5-93d7-1a4fee7775ff","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.6141112} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.951499,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a6d9ec00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a6d9ec00-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6d9ec00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling 200 11ms","method":"POST","requestID":"a6d9ec00-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7","requestID":"d26fcd8b7526856ad907afa561d005a3"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d26fcd8b7526856ad907afa561d005a3"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2582","request_time":"4.462","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"6087fe5f81ad603f23a8cdbee39b9f2b"} experiment-1 | {"level":"info","message":"DELETE /experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7 204 169ms","method":"DELETE","requestID":"d26fcd8b7526856ad907afa561d005a3","responseTime":169,"status":204,"url":"/experiments/1ea3bd7c-c405-4b58-8859-58f942163cd7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"2380c6a49d856521323f3109da94da84","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"2380c6a49d856521323f3109da94da84"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"1efa6022c977f6c1e49b48fed28f7a5c","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"1efa6022c977f6c1e49b48fed28f7a5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4","level":"info","message":"auth send jwt","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f"} device-1 | {"level":"info","message":"postDevices called","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.968","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"63db35c1826b87aaf3f1e235c4007607"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.261094,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5c4f1003-a579-474d-b4e4-dedd01c8394f' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138812,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/18c3746f-8ebd-4c63-88cb-a0622263306a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3932ab4b-1d47-4a94-ba38-3dea4d91db41","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.7117374} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aad034d7-cc60-4ef5-b3dd-af043918e9fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.7205408} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"95170c35-dd1e-4c9b-b1a7-2f29d4b7f068","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.7304666} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"037ac3a2-96cd-4e56-8b0c-717c67440f7d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.730638} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.730442364Z"}]},"request_id":"0f2b40c2-3787-4cee-ad40-05c7e42278d9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.736705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"46dbdec5b2072b07cdbcc71b76eb0c4f","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4","level":"info","message":"auth send jwt","requestID":"1f073400b8b83d87c7739d44946fa9de"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1f073400b8b83d87c7739d44946fa9de","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1f073400b8b83d87c7739d44946fa9de"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.872595,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"1f073400b8b83d87c7739d44946fa9de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138812,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxMn0.ZGZI7wuvubA9pEz_SrCoE_900VXk_B6kplRGy9Jpiw4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1f073400b8b83d87c7739d44946fa9de","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3ad112be-04a5-4326-baac-0616bed64bfd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.768855} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1f073400b8b83d87c7739d44946fa9de","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8988f457-e5ec-43fa-a8bf-67dc29671ef9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.774383} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1f073400b8b83d87c7739d44946fa9de","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"9700f685-acf6-457d-980d-e57d9cb19208","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.7856581} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d179aeac-96f0-4f8f-a75f-59148f3b141c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.7858} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1f073400b8b83d87c7739d44946fa9de","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.785641618Z"}]},"request_id":"24593ed5-bccd-4f96-818f-03658061f3ed","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138812.791363} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1f073400b8b83d87c7739d44946fa9de","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1f073400b8b83d87c7739d44946fa9de"} gateway-1 | {"time_local":"16/Jul/2024:14:06:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f073400b8b83d87c7739d44946fa9de"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"1f073400b8b83d87c7739d44946fa9de","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxM30.873yA_CjlklpN-k58OGjPhaK2sEgaG1hfkibm1KKzGI","level":"info","message":"auth send jwt","requestID":"59545c705f27f560b48bd7a635436059"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"59545c705f27f560b48bd7a635436059","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"59545c705f27f560b48bd7a635436059"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.019493,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"59545c705f27f560b48bd7a635436059","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138813,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxM30.873yA_CjlklpN-k58OGjPhaK2sEgaG1hfkibm1KKzGI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"59545c705f27f560b48bd7a635436059","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.730442364Z"}]},"request_id":"b685c859-abdd-460d-b5f9-62338fdbe867","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138813.2803452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"59545c705f27f560b48bd7a635436059","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87dd7bdd-1965-456b-955a-f4ffd14929b3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138813.286703} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"59545c705f27f560b48bd7a635436059","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.730442364Z"}]},"request_id":"40457023-a97d-449c-bc4c-a5685e747edc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138813.3000367} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"59545c705f27f560b48bd7a635436059","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"59545c705f27f560b48bd7a635436059"} gateway-1 | {"time_local":"16/Jul/2024:14:06:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/621e833c-3e29-4918-8675-0797b033440d HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"59545c705f27f560b48bd7a635436059"} device-1 | {"level":"info","message":"PATCH /devices/621e833c-3e29-4918-8675-0797b033440d 200 38ms","method":"PATCH","requestID":"59545c705f27f560b48bd7a635436059","responseTime":38,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxM30.873yA_CjlklpN-k58OGjPhaK2sEgaG1hfkibm1KKzGI","level":"info","message":"auth send jwt","requestID":"3dfd9e652f67db7a9d85c874d1a211d1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3dfd9e652f67db7a9d85c874d1a211d1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3dfd9e652f67db7a9d85c874d1a211d1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883318,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3dfd9e652f67db7a9d85c874d1a211d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138813,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxM30.873yA_CjlklpN-k58OGjPhaK2sEgaG1hfkibm1KKzGI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3dfd9e652f67db7a9d85c874d1a211d1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3dfd9e652f67db7a9d85c874d1a211d1"} gateway-1 | {"time_local":"16/Jul/2024:14:06:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/621e833c-3e29-4918-8675-0797b033440d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"3dfd9e652f67db7a9d85c874d1a211d1"} device-1 | {"level":"info","message":"POST /devices/621e833c-3e29-4918-8675-0797b033440d/websocket 200 22ms","method":"POST","requestID":"3dfd9e652f67db7a9d85c874d1a211d1","responseTime":22,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"479b03e15d57eb0e4c3514cee6aa59dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"479b03e15d57eb0e4c3514cee6aa59dc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"479b03e15d57eb0e4c3514cee6aa59dc"} device-1 | {"level":"info","message":"OPTIONS /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/websocket 200 1ms","method":"OPTIONS","requestID":"479b03e15d57eb0e4c3514cee6aa59dc","responseTime":1,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs","level":"info","message":"auth send jwt","requestID":"a64e2cbfb0466855ba945758465c885b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a64e2cbfb0466855ba945758465c885b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a64e2cbfb0466855ba945758465c885b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.214326,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a64e2cbfb0466855ba945758465c885b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a64e2cbfb0466855ba945758465c885b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a64e2cbfb0466855ba945758465c885b"} device-1 | {"level":"info","message":"POST /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/websocket 200 24ms","method":"POST","requestID":"a64e2cbfb0466855ba945758465c885b","responseTime":24,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a64e2cbfb0466855ba945758465c885b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs","level":"info","message":"auth send jwt","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.221653,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.730442364Z"}]},"request_id":"3766a2a2-822f-4beb-bf73-64b3057aec88","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138814.8517985} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f"} gateway-1 | {"time_local":"16/Jul/2024:14:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/621e833c-3e29-4918-8675-0797b033440d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f"} device-1 | {"level":"info","message":"GET /devices/621e833c-3e29-4918-8675-0797b033440d? 200 19ms","method":"GET","requestID":"cd9dc98a6ace6d4a2608bcab2ed4781f","responseTime":19,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs","level":"info","message":"auth send jwt","requestID":"261411b7ce73e81d55468257a4a96d3a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"261411b7ce73e81d55468257a4a96d3a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"261411b7ce73e81d55468257a4a96d3a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.239991,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"261411b7ce73e81d55468257a4a96d3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"261411b7ce73e81d55468257a4a96d3a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.785641618Z"}]},"request_id":"c0a8b5c6-4329-4ee2-88bd-a89d092947e0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138814.874295} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"261411b7ce73e81d55468257a4a96d3a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"261411b7ce73e81d55468257a4a96d3a"} gateway-1 | {"time_local":"16/Jul/2024:14:06:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffb02e83-09f1-4505-bb2f-502805c23dba? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"261411b7ce73e81d55468257a4a96d3a"} device-1 | {"level":"info","message":"GET /devices/ffb02e83-09f1-4505-bb2f-502805c23dba? 200 15ms","method":"GET","requestID":"261411b7ce73e81d55468257a4a96d3a","responseTime":15,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs","level":"info","message":"auth send jwt","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2ab00b5bfce8ea1dc97a25545149a708","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.777099,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2ab00b5bfce8ea1dc97a25545149a708","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2ab00b5bfce8ea1dc97a25545149a708","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Attempting to run experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Attempting to book experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully booked experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a83cfe70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a83d4c90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.951575,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a83cfe70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a83cfe70-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.041628,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a83d4c90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a83d4c90-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.730442364Z"}]},"request_id":"3ba2bdaa-fbd7-4539-bb71-4a98baff04cc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138814.949064} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a83cfe70-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.785641618Z"}]},"request_id":"e4f3dbfb-560b-4a1e-8050-1fe385675e0e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138814.9538822} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a83cfe70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a83d4c90-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/621e833c-3e29-4918-8675-0797b033440d? 200 20ms","method":"GET","requestID":"a83cfe70-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a83d4c90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/ffb02e83-09f1-4505-bb2f-502805c23dba? 200 22ms","method":"GET","requestID":"a83d4c90-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Setting up experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully set up experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8490c60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8498190-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a84a1dd0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully running experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":4.320481,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.609276,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a8490c60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"a8490c60-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a8498190-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"a8498190-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46660","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46660","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.480207,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.785641618Z"}]},"request_id":"48cf90ce-2c6d-46a8-8879-307eb3962217","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.039554} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f343d2f2-7909-4b57-b471-33bbc0332d87","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.0398393} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"a8498190-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a84a1dd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 22ms","method":"POST","requestID":"a84a1dd0-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.730442364Z"}]},"request_id":"6eea6708-83ed-4468-91ea-35a62cc93244","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.0425537} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"a8490c60-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38d754f3-ca5e-4a9e-97d7-774e01d508ed#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38d754f3-ca5e-4a9e-97d7-774e01d508ed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"eb3858d6-41d6-4c0b-a552-159c5f9c1c32","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.052663} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb11a3ef-5854-48e4-aacd-fa455c11db6f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.053019} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8498190-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/ffb02e83-09f1-4505-bb2f-502805c23dba? 200 39ms","method":"GET","requestID":"a8498190-437c-11ef-8659-f5877ab12720","responseTime":39,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"2ab00b5bfce8ea1dc97a25545149a708","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a84a1dd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/621e833c-3e29-4918-8675-0797b033440d/signaling 200 37ms","method":"POST","requestID":"a84a1dd0-437c-11ef-8659-f5877ab12720","responseTime":37,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8490c60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/621e833c-3e29-4918-8675-0797b033440d? 200 45ms","method":"GET","requestID":"a8490c60-437c-11ef-8659-f5877ab12720","responseTime":45,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a850d490-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a85149c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.852141,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.068985,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7dda99ae-ff6b-44d2-8bec-f1adb561e26f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.0743897} experiment-1 | {"data":{"experiment":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee833c53-2f84-4a19-8b0a-f0d28d230ec2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.076101} gateway-1 | {"time_local":"16/Jul/2024:14:06:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.198","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"level":"info","message":"POST /experiments? 201 192ms","method":"POST","requestID":"2ab00b5bfce8ea1dc97a25545149a708","responseTime":192,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a850d490-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"a850d490-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a85149c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"a85149c0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNX0.VuM8118jSkhcKP-BenqrRkDJZbfUrbUq-ACTlk-EICw","level":"info","message":"auth send jwt","requestID":"4329ef58b3eb55a8270490122a10f4e8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a850d490-437c-11ef-8659-f5877ab12720"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4329ef58b3eb55a8270490122a10f4e8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling 200 21ms","method":"POST","requestID":"a850d490-437c-11ef-8659-f5877ab12720","responseTime":21,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a85149c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/621e833c-3e29-4918-8675-0797b033440d/signaling 200 20ms","method":"POST","requestID":"a85149c0-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4329ef58b3eb55a8270490122a10f4e8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a854cc30-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926226,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4329ef58b3eb55a8270490122a10f4e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138815,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNX0.VuM8118jSkhcKP-BenqrRkDJZbfUrbUq-ACTlk-EICw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4329ef58b3eb55a8270490122a10f4e8","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09d29ee1-09f2-43f3-b37c-debff0fbe630","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.0978138} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.120986,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a854cc30-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a854cc30-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a854cc30-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.730442364Z"}]},"request_id":"a0c5df90-f50b-4759-b296-0d5e97ca501e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.1044738} device-1 | {"level":"info","message":"POST /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling 200 13ms","method":"POST","requestID":"a854cc30-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Building connection plan","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"b9de16b5-ee28-462c-a90c-abed43c8be75"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"e8ff6043-74ce-4111-a993-20c57f53b9f8"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"3275a9c4-a4c0-4a19-86c1-9cb4e83e4c4a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4329ef58b3eb55a8270490122a10f4e8","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a8578b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4329ef58b3eb55a8270490122a10f4e8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} gateway-1 | {"time_local":"16/Jul/2024:14:06:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/621e833c-3e29-4918-8675-0797b033440d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4329ef58b3eb55a8270490122a10f4e8"} device-1 | {"level":"info","message":"GET /devices/621e833c-3e29-4918-8675-0797b033440d? 200 25ms","method":"GET","requestID":"4329ef58b3eb55a8270490122a10f4e8","responseTime":25,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.065263,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a8578b50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138814,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNH0.ZsLVCCUipNIlapf4vIIhD1oWk6PW1r2W27haWXJECMs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a8578b50-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNX0.VuM8118jSkhcKP-BenqrRkDJZbfUrbUq-ACTlk-EICw","level":"info","message":"auth send jwt","requestID":"524c1215e1526ab276b9c31f76803c8b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"524c1215e1526ab276b9c31f76803c8b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"524c1215e1526ab276b9c31f76803c8b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.758089,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"524c1215e1526ab276b9c31f76803c8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138815,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxNX0.VuM8118jSkhcKP-BenqrRkDJZbfUrbUq-ACTlk-EICw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"524c1215e1526ab276b9c31f76803c8b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"0fc704ae-3b0d-4c43-8255-ae7bbb04b41d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.1290452} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"305547b1-77bb-42c3-bfc1-91d8bae19291","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.129344} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:52.785641618Z"}]},"request_id":"eb47df11-45ac-4534-b71c-60be8f9f6fc9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.1304712} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a8578b50-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"524c1215e1526ab276b9c31f76803c8b","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"524c1215e1526ab276b9c31f76803c8b"} gateway-1 | {"time_local":"16/Jul/2024:14:06:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffb02e83-09f1-4505-bb2f-502805c23dba? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"524c1215e1526ab276b9c31f76803c8b"} device-1 | {"level":"info","message":"GET /devices/ffb02e83-09f1-4505-bb2f-502805c23dba? 200 17ms","method":"GET","requestID":"524c1215e1526ab276b9c31f76803c8b","responseTime":17,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a8578b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a8578b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2'","requestID":"a8578b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2'","requestID":"a8578b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a8578b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 38ms","method":"POST","requestID":"a8578b50-437c-11ef-8659-f5877ab12720","responseTime":38,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"a8578b50-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2ab00b5bfce8ea1dc97a25545149a708"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a86212a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d5a2ea3-eef8-4d57-b705-62d785223bab","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.1830559} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.875293,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a86212a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a86212a0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a86212a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/621e833c-3e29-4918-8675-0797b033440d/signaling 200 9ms","method":"POST","requestID":"a86212a0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a863c050-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abbc9e91-72fa-4385-80f7-bbddd51397a6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138815.1946301} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.620096,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a863c050-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a863c050-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a863c050-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling 200 12ms","method":"POST","requestID":"a863c050-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling"} device-1 | {"data":{"peerconnection":"b64ec07d-322e-4185-9707-ccd23688b0e2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b64ec07d-322e-4185-9707-ccd23688b0e2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1c8ad7db5e64451f1e0bc8e090f641a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b1c8ad7db5e64451f1e0bc8e090f641a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2"}}},"level":"info","message":"received a callback","requestID":"b1c8ad7db5e64451f1e0bc8e090f641a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"b1c8ad7db5e64451f1e0bc8e090f641a","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"b1c8ad7db5e64451f1e0bc8e090f641a"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba'"} device-1 | {"data":{"peerconnection":"b64ec07d-322e-4185-9707-ccd23688b0e2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b64ec07d-322e-4185-9707-ccd23688b0e2","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b64ec07d-322e-4185-9707-ccd23688b0e2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1aae4fa27a61c317a95a3fdf56e9a519","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2"}}},"level":"info","message":"received a callback","requestID":"1aae4fa27a61c317a95a3fdf56e9a519"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1aae4fa27a61c317a95a3fdf56e9a519","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a99f2680-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb64ec07d-322e-4185-9707-ccd23688b0e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec498fc3-0b21-4b22-b44c-4d3edff2e818","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.2618318} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.59362,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a99f2680-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a99f2680-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a99f2680-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2 200 10ms","method":"GET","requestID":"a99f2680-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"1aae4fa27a61c317a95a3fdf56e9a519","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"1aae4fa27a61c317a95a3fdf56e9a519"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9a3e170-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8fc8443b-3c6c-478f-9c08-67dcfd7f0762","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.2925704} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.77312,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a9a3e170-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9a3e170-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9a3e170-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/621e833c-3e29-4918-8675-0797b033440d/signaling 200 11ms","method":"POST","requestID":"a9a3e170-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9a5dd40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f0ea2c9-2f95-450e-a953-9563fa77e38a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.304718} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.39243,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a9a5dd40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9a5dd40-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9a5dd40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling 200 9ms","method":"POST","requestID":"a9a5dd40-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA","level":"info","message":"auth send jwt","requestID":"8f3eb3955515a5def928d229366fbeca"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8f3eb3955515a5def928d229366fbeca","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","requestID":"8f3eb3955515a5def928d229366fbeca"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.38134,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"8f3eb3955515a5def928d229366fbeca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138817,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8f3eb3955515a5def928d229366fbeca","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","requestID":"8f3eb3955515a5def928d229366fbeca"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f3eb3955515a5def928d229366fbeca"} experiment-1 | {"level":"info","message":"GET /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed 200 18ms","method":"GET","requestID":"8f3eb3955515a5def928d229366fbeca","responseTime":18,"status":200,"url":"/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA","level":"info","message":"auth send jwt","requestID":"67382be7363b121fcc24ef836fb303a7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"67382be7363b121fcc24ef836fb303a7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","requestID":"67382be7363b121fcc24ef836fb303a7"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.214046,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"67382be7363b121fcc24ef836fb303a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138817,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"67382be7363b121fcc24ef836fb303a7","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Attempting to finish experiment","requestID":"67382be7363b121fcc24ef836fb303a7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a9c488d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.155343,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a9c488d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138817,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9c488d0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b64ec07d-322e-4185-9707-ccd23688b0e2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f570af10bc68d65287fed070e7bea806","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb64ec07d-322e-4185-9707-ccd23688b0e2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb64ec07d-322e-4185-9707-ccd23688b0e2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"43966c3d-5c2f-45f1-801f-df9e265a999a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.5255806} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f20657e6-4716-4ec5-a2da-bf7e5c5235de","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.5259993} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f570af10bc68d65287fed070e7bea806","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e90b73de5387040499757af71420777","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3e90b73de5387040499757af71420777","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"a9c488d0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2"}}},"level":"info","message":"received a callback","requestID":"f570af10bc68d65287fed070e7bea806"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2"}}},"level":"info","message":"received a callback","requestID":"3e90b73de5387040499757af71420777"} device-1 | {"data":{"peerconnection":"b64ec07d-322e-4185-9707-ccd23688b0e2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a9c488d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2 204 49ms","method":"DELETE","requestID":"a9c488d0-437c-11ef-8659-f5877ab12720","responseTime":49,"status":204,"url":"/peerconnections/b64ec07d-322e-4185-9707-ccd23688b0e2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"},"level":"info","message":"Successfully finished experiment","requestID":"67382be7363b121fcc24ef836fb303a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9cffa80-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F621e833c-3e29-4918-8675-0797b033440d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d43c8179-4dfa-4da5-98ac-52cb9bcf84e1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.585432} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.678108,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a9cffa80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a9cffa80-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9cffa80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/621e833c-3e29-4918-8675-0797b033440d/signaling 200 16ms","method":"POST","requestID":"a9cffa80-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/621e833c-3e29-4918-8675-0797b033440d/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38d754f3-ca5e-4a9e-97d7-774e01d508ed': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F38d754f3-ca5e-4a9e-97d7-774e01d508ed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"956b3656-e418-40c7-b022-75e53ac0bf3e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.5921671} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f6c3cda-3c50-4113-a0cd-9f97632b8fe8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.59261} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9d2e0b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"67382be7363b121fcc24ef836fb303a7","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb02e83-09f1-4505-bb2f-502805c23dba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d52abf4c-d3a4-4484-aaae-a750929082ba","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.6025732} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.598533,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a9d2e0b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a9d2e0b0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9d2e0b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling 200 14ms","method":"POST","requestID":"a9d2e0b0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/ffb02e83-09f1-4505-bb2f-502805c23dba/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed","requestID":"67382be7363b121fcc24ef836fb303a7"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"67382be7363b121fcc24ef836fb303a7"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2975","request_time":"4.327","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4596ba5a33216e4e3c768c26cb34fb94"} experiment-1 | {"level":"info","message":"DELETE /experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed 204 180ms","method":"DELETE","requestID":"67382be7363b121fcc24ef836fb303a7","responseTime":180,"status":204,"url":"/experiments/38d754f3-ca5e-4a9e-97d7-774e01d508ed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"f570af10bc68d65287fed070e7bea806","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"f570af10bc68d65287fed070e7bea806"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"3e90b73de5387040499757af71420777","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"3e90b73de5387040499757af71420777"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA","level":"info","message":"auth send jwt","requestID":"aafb5b9548943ddabf796160d33256a6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aafb5b9548943ddabf796160d33256a6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"aafb5b9548943ddabf796160d33256a6"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2485","request_time":"2.860","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"82836e36e5f05cc87d0e511460cd9ec2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.890918,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aafb5b9548943ddabf796160d33256a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138817,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aafb5b9548943ddabf796160d33256a6","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/621e833c-3e29-4918-8675-0797b033440d' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7fef7b60-90a8-472e-85dc-edf38397cb33","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.6901498} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aafb5b9548943ddabf796160d33256a6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ffb02e83-09f1-4505-bb2f-502805c23dba' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e703611c-63f0-4efb-a8f9-216d0f510dd1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.6954947} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"aafb5b9548943ddabf796160d33256a6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"85bdaf0a-5eac-43b0-b3f1-e977bff441f4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.7059667} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5e95065-2617-4604-9d94-490700613375","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.7062428} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"aafb5b9548943ddabf796160d33256a6","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.705940999Z"}]},"request_id":"c860fc81-ecbc-4710-a853-d43ee89c9a6e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.7111063} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aafb5b9548943ddabf796160d33256a6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"aafb5b9548943ddabf796160d33256a6"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aafb5b9548943ddabf796160d33256a6"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"aafb5b9548943ddabf796160d33256a6","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA","level":"info","message":"auth send jwt","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.71993,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138817,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxN30.8C8WPpfhIDvw8CBeGQVgEdpGaz9FYGQY6rvwM17Y5HA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b72cfe99-131c-49cf-9b57-9dad08a42dbe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.7430933} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f78b817d-4bb4-4134-a7d5-f5c2984c82e2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.748284} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"bf32b116-d849-48d6-9b32-87899916c3d8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.7600272} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5cf8ddb-32e7-4bbe-993b-c2b07442cf17","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.760183} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.760003503Z"}]},"request_id":"8e6e2421-999d-4723-9edc-6b38df2ebde9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138817.7649026} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4"} gateway-1 | {"time_local":"16/Jul/2024:14:06:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"bcc52e73bfdeebe407d1bfbb5fbdecc4","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"c0202a5fec294377b8eda86c2d60b5d8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c0202a5fec294377b8eda86c2d60b5d8","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"060b2719b07a99ce0d0f01b7848da4d7"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c0202a5fec294377b8eda86c2d60b5d8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"060b2719b07a99ce0d0f01b7848da4d7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"060b2719b07a99ce0d0f01b7848da4d7"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.841886,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c0202a5fec294377b8eda86c2d60b5d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0202a5fec294377b8eda86c2d60b5d8","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.725041,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"060b2719b07a99ce0d0f01b7848da4d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"060b2719b07a99ce0d0f01b7848da4d7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.760003503Z"}]},"request_id":"61aac9dd-6805-4016-8da5-3e7383770037","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.2501283} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c0202a5fec294377b8eda86c2d60b5d8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.705940999Z"}]},"request_id":"b9785e19-5c6c-4954-9482-d9c84492493f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.250986} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"060b2719b07a99ce0d0f01b7848da4d7","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"414a4702-016d-4592-a0c6-559efad3888c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.255418} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c0202a5fec294377b8eda86c2d60b5d8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b5956dc-0fb2-4477-bf01-b2b51b26a546","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.2575107} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"060b2719b07a99ce0d0f01b7848da4d7","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.705940999Z"}]},"request_id":"118d3c51-c03d-43a8-9102-3df193651737","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.2630897} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"060b2719b07a99ce0d0f01b7848da4d7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"060b2719b07a99ce0d0f01b7848da4d7"} device-1 | {"level":"info","message":"PATCH /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2 200 27ms","method":"PATCH","requestID":"060b2719b07a99ce0d0f01b7848da4d7","responseTime":27,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"060b2719b07a99ce0d0f01b7848da4d7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.760003503Z"}]},"request_id":"61d924c8-c157-4dc5-9b1a-484167788f3c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.274692} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c0202a5fec294377b8eda86c2d60b5d8","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.844115,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c0202a5fec294377b8eda86c2d60b5d8"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c0202a5fec294377b8eda86c2d60b5d8"} device-1 | {"level":"info","message":"PATCH /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb 200 40ms","method":"PATCH","requestID":"c0202a5fec294377b8eda86c2d60b5d8","responseTime":40,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"fcc81e17c3d8e7e7b73004fdff3d1565"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fcc81e17c3d8e7e7b73004fdff3d1565","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fcc81e17c3d8e7e7b73004fdff3d1565"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.892763,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"fcc81e17c3d8e7e7b73004fdff3d1565","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fcc81e17c3d8e7e7b73004fdff3d1565","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660"} device-1 | {"level":"info","message":"POST /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/websocket 200 20ms","method":"POST","requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660","responseTime":20,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"7bdedbcd1e7d2a5bfd13b5b1ea34a660"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fcc81e17c3d8e7e7b73004fdff3d1565"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fcc81e17c3d8e7e7b73004fdff3d1565"} device-1 | {"level":"info","message":"POST /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/websocket 200 16ms","method":"POST","requestID":"fcc81e17c3d8e7e7b73004fdff3d1565","responseTime":16,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"0f962619d94a0bc375ef1ffc779b0c06"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0f962619d94a0bc375ef1ffc779b0c06","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f962619d94a0bc375ef1ffc779b0c06"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670311,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0f962619d94a0bc375ef1ffc779b0c06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f962619d94a0bc375ef1ffc779b0c06","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.705940999Z"}]},"request_id":"bcd02ac0-91dc-4331-bf03-50170fa97c37","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.337555} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0f962619d94a0bc375ef1ffc779b0c06","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f962619d94a0bc375ef1ffc779b0c06"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f962619d94a0bc375ef1ffc779b0c06"} device-1 | {"level":"info","message":"GET /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2? 200 15ms","method":"GET","requestID":"0f962619d94a0bc375ef1ffc779b0c06","responseTime":15,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683231,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"00fcb1169775c1f36d62ea9e9f9f41e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.760003503Z"}]},"request_id":"dc82b282-21ef-41f7-a0cb-82677c333e8e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.3599691} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8"} device-1 | {"level":"info","message":"GET /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb? 200 17ms","method":"GET","requestID":"00fcb1169775c1f36d62ea9e9f9f41e8","responseTime":17,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"41aab84f787097237cd5096170a95907"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"41aab84f787097237cd5096170a95907","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"41aab84f787097237cd5096170a95907"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.994791,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"41aab84f787097237cd5096170a95907","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41aab84f787097237cd5096170a95907","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Attempting to run experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Attempting to book experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully booked experiment","requestID":"41aab84f787097237cd5096170a95907"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa50c340-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa511160-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170264,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa50c340-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"aa50c340-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140847,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa511160-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"aa511160-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.705940999Z"}]},"request_id":"a6040437-68b1-4e19-af0d-32ec11aa134c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.4345005} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"aa50c340-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.760003503Z"}]},"request_id":"993a8ed4-9487-4e09-a75d-9897f12dbe2e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.4359376} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aa511160-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa50c340-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2? 200 21ms","method":"GET","requestID":"aa50c340-437c-11ef-8659-f5877ab12720","responseTime":21,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa511160-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb? 200 20ms","method":"GET","requestID":"aa511160-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Setting up experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully locked booking for experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Attempting to update booking for experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully updated booking for experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully set up experiment","requestID":"41aab84f787097237cd5096170a95907"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa5cd130-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa5d4660-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa5d9480-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully running experiment","requestID":"41aab84f787097237cd5096170a95907"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.716623,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa5cd130-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa5cd130-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.86067,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:46660","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa5d4660-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"aa5d4660-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46660","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.290751,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae9d6c7b-3fbe-4de7-98f0-9a0d17471a7f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.512483} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa5d9480-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"aa5d9480-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.705940999Z"}]},"request_id":"0e32f880-88c0-4dee-8827-643ddc61d06d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5162926} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa5d9480-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling 200 17ms","method":"POST","requestID":"aa5d9480-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"aa5cd130-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.760003503Z"}]},"request_id":"6b47dab9-0014-4555-8e95-286bd335e269","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5209} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aa5d4660-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa607ab0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa5cd130-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2? 200 30ms","method":"GET","requestID":"aa5cd130-437c-11ef-8659-f5877ab12720","responseTime":30,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa5d4660-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb? 200 29ms","method":"GET","requestID":"aa5d4660-437c-11ef-8659-f5877ab12720","responseTime":29,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffa18960-a2a4-4737-adbc-7af7e6afce0a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5300872} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.692643,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa607ab0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"aa607ab0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b4ddcfd-5f65-484b-96a5-092a36837912#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b4ddcfd-5f65-484b-96a5-092a36837912","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"53211f08-36f4-4510-bf5b-42df61ec4277","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5314138} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa620150-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8546ea8d-1a22-4151-b992-8f9f344e234b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5319061} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"41aab84f787097237cd5096170a95907","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa607ab0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling 200 13ms","method":"POST","requestID":"aa607ab0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dee27b3d-a6e4-4cc6-9942-9b3047c3fa18","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.539538} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.65805,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa620150-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"aa620150-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"level":"info","message":"POST /experiments? 201 172ms","method":"POST","requestID":"41aab84f787097237cd5096170a95907","responseTime":172,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"785","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41aab84f787097237cd5096170a95907"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa620150-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling 200 12ms","method":"POST","requestID":"aa620150-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa647250-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"595c6388cf1b492800d4f56e9cd6539e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"595c6388cf1b492800d4f56e9cd6539e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"595c6388cf1b492800d4f56e9cd6539e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4de891ff-de4e-4eff-aa4d-d13a9f235b8e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5541995} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.085881,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa647250-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aa647250-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46646","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.99932,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"595c6388cf1b492800d4f56e9cd6539e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"595c6388cf1b492800d4f56e9cd6539e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa647250-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling 200 11ms","method":"POST","requestID":"aa647250-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.705940999Z"}]},"request_id":"b2a3cc3f-a735-4174-832c-97b5cf683d2f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5609672} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Building connection plan","requestID":"41aab84f787097237cd5096170a95907"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"9db8f8f2-1f5e-4361-812e-30c1c2c6ecbe"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"72ff2be8-8127-4ee9-a132-d5b9329f7d24"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"e8ecd908-2557-4dd3-8f1d-36a68832580c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"41aab84f787097237cd5096170a95907"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"595c6388cf1b492800d4f56e9cd6539e","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"41aab84f787097237cd5096170a95907"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"aa66e350-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.954969,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa66e350-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa66e350-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"595c6388cf1b492800d4f56e9cd6539e"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"595c6388cf1b492800d4f56e9cd6539e"} device-1 | {"level":"info","message":"GET /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2? 200 20ms","method":"GET","requestID":"595c6388cf1b492800d4f56e9cd6539e","responseTime":20,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM","level":"info","message":"auth send jwt","requestID":"42281ff59d0898384f2c118453b2ca78"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"42281ff59d0898384f2c118453b2ca78","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42281ff59d0898384f2c118453b2ca78"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8b4075e5-e0d1-496c-8d2c-a71a14e2f011","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5790818} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fd32fb0-0947-4c74-93c7-4661d4d25424","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5795615} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"aa66e350-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777781,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"42281ff59d0898384f2c118453b2ca78","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138818,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgxOH0.l0ihMA4LZJSEin0TxFO1O11uyvcUikt0xFb6hWyUqyM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"42281ff59d0898384f2c118453b2ca78","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:06:57.760003503Z"}]},"request_id":"085c8096-5b28-4504-a1d5-8bc64d7bd60d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.5872793} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42281ff59d0898384f2c118453b2ca78","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"aa66e350-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"aa66e350-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622'","requestID":"aa66e350-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622'","requestID":"aa66e350-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"aa66e350-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"aa66e350-437c-11ef-8659-f5877ab12720","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42281ff59d0898384f2c118453b2ca78"} device-1 | {"level":"info","message":"GET /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb? 200 21ms","method":"GET","requestID":"42281ff59d0898384f2c118453b2ca78","responseTime":21,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb?"} gateway-1 | {"time_local":"16/Jul/2024:14:06:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42281ff59d0898384f2c118453b2ca78"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"aa66e350-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"41aab84f787097237cd5096170a95907"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa700b10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e3a9929-858d-4b53-8394-aa1bddfebe73","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.6304562} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.252342,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa700b10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa700b10-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa700b10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling 200 10ms","method":"POST","requestID":"aa700b10-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa71dfd0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04ec073d-4379-49b4-8450-f501ba38c6e5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138818.6418715} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.136817,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:06:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aa71dfd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa71dfd0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa71dfd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling 200 8ms","method":"POST","requestID":"aa71dfd0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f6e196daf67789ee46122ec25e063aa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5f6e196daf67789ee46122ec25e063aa","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622"}}},"level":"info","message":"received a callback","requestID":"5f6e196daf67789ee46122ec25e063aa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"5f6e196daf67789ee46122ec25e063aa","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"5f6e196daf67789ee46122ec25e063aa"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ddac48d03d506acf95b634d46c73929c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ddac48d03d506acf95b634d46c73929c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622"}}},"level":"info","message":"received a callback","requestID":"ddac48d03d506acf95b634d46c73929c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"abafde10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb4118c03-3625-4a5f-9460-991a9d2b5622","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e7de15f-c3b1-420b-ac12-be0366cce1c6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138820.7283592} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":5.918345,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"abafde10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"abafde10-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"abafde10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622 200 16ms","method":"GET","requestID":"abafde10-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 45ms","method":"POST","requestID":"ddac48d03d506acf95b634d46c73929c","responseTime":45,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"ddac48d03d506acf95b634d46c73929c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abb5aa70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2f9f076-53d8-42e3-a659-daa91ac8f575","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138820.7652085} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.324919,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"abb5aa70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"abb5aa70-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abb5aa70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling 200 11ms","method":"POST","requestID":"abb5aa70-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abb7a640-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39a3c8af-4371-4637-93b1-192e766f511e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138820.7772849} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.362673,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"abb7a640-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"abb7a640-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abb7a640-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling 200 9ms","method":"POST","requestID":"abb7a640-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMH0.yMnW8_o1XITi0zg33uHtSU_5x0SdD1dC1nobKT3rjKM","level":"info","message":"auth send jwt","requestID":"9b685fddb4da781d55c757ad80f922c7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9b685fddb4da781d55c757ad80f922c7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","requestID":"9b685fddb4da781d55c757ad80f922c7"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.122031,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b685fddb4da781d55c757ad80f922c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138820,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMH0.yMnW8_o1XITi0zg33uHtSU_5x0SdD1dC1nobKT3rjKM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b685fddb4da781d55c757ad80f922c7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","requestID":"9b685fddb4da781d55c757ad80f922c7"} gateway-1 | {"time_local":"16/Jul/2024:14:07:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912 HTTP/1.1","status": "200","body_bytes_sent":"858","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b685fddb4da781d55c757ad80f922c7"} experiment-1 | {"level":"info","message":"GET /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912 200 18ms","method":"GET","requestID":"9b685fddb4da781d55c757ad80f922c7","responseTime":18,"status":200,"url":"/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMH0.yMnW8_o1XITi0zg33uHtSU_5x0SdD1dC1nobKT3rjKM","level":"info","message":"auth send jwt","requestID":"782472fa8bb33b10bb9a606972242ad8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"782472fa8bb33b10bb9a606972242ad8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","requestID":"782472fa8bb33b10bb9a606972242ad8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.300438,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"782472fa8bb33b10bb9a606972242ad8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138820,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMH0.yMnW8_o1XITi0zg33uHtSU_5x0SdD1dC1nobKT3rjKM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"782472fa8bb33b10bb9a606972242ad8","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Attempting to finish experiment","requestID":"782472fa8bb33b10bb9a606972242ad8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"abd47d10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.212788,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"abd47d10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138820,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMH0.yMnW8_o1XITi0zg33uHtSU_5x0SdD1dC1nobKT3rjKM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"abd47d10-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"84b605e0190a1851e47b90931a491fde","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"84b605e0190a1851e47b90931a491fde","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"21bb4c15a946ed5cc44d222db182979a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622"}}},"level":"info","message":"received a callback","requestID":"84b605e0190a1851e47b90931a491fde"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"21bb4c15a946ed5cc44d222db182979a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622"}}},"level":"info","message":"received a callback","requestID":"21bb4c15a946ed5cc44d222db182979a"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb4118c03-3625-4a5f-9460-991a9d2b5622': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb4118c03-3625-4a5f-9460-991a9d2b5622","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"68340c61-4fb6-488a-ab4a-42094e7d9759","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138820.9885097} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cc3cb7c-48d3-41e7-8af7-5e87f10271fb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138820.9889648} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"abd47d10-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b4118c03-3625-4a5f-9460-991a9d2b5622","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"abd47d10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622 204 49ms","method":"DELETE","requestID":"abd47d10-437c-11ef-8659-f5877ab12720","responseTime":49,"status":204,"url":"/peerconnections/b4118c03-3625-4a5f-9460-991a9d2b5622"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"},"level":"info","message":"Successfully finished experiment","requestID":"782472fa8bb33b10bb9a606972242ad8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abdedd50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b536316b-fba7-4c8d-8f79-e34638319165","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.0359125} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.07805,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"abdedd50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"abdedd50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b4ddcfd-5f65-484b-96a5-092a36837912': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9b4ddcfd-5f65-484b-96a5-092a36837912","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"40a82859-5871-492d-b658-9dc9e33c0bef","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.0372326} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48e5d6de-50b0-47da-8296-bb26459d7487","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.0374868} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"782472fa8bb33b10bb9a606972242ad8","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abdedd50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling 200 13ms","method":"POST","requestID":"abdedd50-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abe10030-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff9081bc9-f4b2-44f8-b12c-835a058953cb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0365dd57-d615-4ef8-8a15-cfd535917946","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.0482712} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.424123,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"abe10030-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"abe10030-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abe10030-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling 200 9ms","method":"POST","requestID":"abe10030-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912","requestID":"782472fa8bb33b10bb9a606972242ad8"} gateway-1 | {"time_local":"16/Jul/2024:14:07:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"782472fa8bb33b10bb9a606972242ad8"} experiment-1 | {"level":"info","message":"DELETE /experiments/9b4ddcfd-5f65-484b-96a5-092a36837912 204 164ms","method":"DELETE","requestID":"782472fa8bb33b10bb9a606972242ad8","responseTime":164,"status":204,"url":"/experiments/9b4ddcfd-5f65-484b-96a5-092a36837912"} gateway-1 | {"time_local":"16/Jul/2024:14:07:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.813","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"23db2d8a6e728b2d56b10ef4a4f13861"} gateway-1 | {"time_local":"16/Jul/2024:14:07:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.805","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d8b15883b53e7864169ea1de954017e5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"84b605e0190a1851e47b90931a491fde","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"84b605e0190a1851e47b90931a491fde"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"21bb4c15a946ed5cc44d222db182979a","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"21bb4c15a946ed5cc44d222db182979a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMX0.I-F014vHr7SqSLQ19KF3hcURhM1Q3bEa4aHlvkjDWGU","level":"info","message":"auth send jwt","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f9081bc9-f4b2-44f8-b12c-835a058953cb' closed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.997564,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138821,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMX0.I-F014vHr7SqSLQ19KF3hcURhM1Q3bEa4aHlvkjDWGU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8ec40662-ac7e-4cd7-8a4d-ec1f0a72fdc2' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fee105b0-9dac-4bd8-9801-8e474a1d9494","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.1390567} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fde7b94c-d068-46af-b5c6-989a90149cc4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.1454186} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"595fec1c-d592-49d9-b456-d1a540e18746","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.1557946} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"caad70c3-8cdb-41b5-a16f-393abce38da0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.155876} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.155751315Z"}]},"request_id":"9b68c8e4-4935-452a-8359-ffda5f570b93","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.160863} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58"} gateway-1 | {"time_local":"16/Jul/2024:14:07:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"0b4b2e0400fbd1e530cc4a9c00b94d58","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMX0.I-F014vHr7SqSLQ19KF3hcURhM1Q3bEa4aHlvkjDWGU","level":"info","message":"auth send jwt","requestID":"ae8e34000a1cc998c1ff8147f827a2a9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae8e34000a1cc998c1ff8147f827a2a9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ae8e34000a1cc998c1ff8147f827a2a9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.812808,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ae8e34000a1cc998c1ff8147f827a2a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138821,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyMX0.I-F014vHr7SqSLQ19KF3hcURhM1Q3bEa4aHlvkjDWGU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae8e34000a1cc998c1ff8147f827a2a9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2baae50a-171a-4e8e-8b65-ecd85215b19e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.1918368} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae8e34000a1cc998c1ff8147f827a2a9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b471402f-20cf-4ed3-bf54-bdee76c4e23b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.1977315} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ae8e34000a1cc998c1ff8147f827a2a9","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"ed7bbef1-1aea-4f96-853a-a12f15f05835","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.2096543} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e26d289b-8789-47a1-ab99-9b4fc4d6162c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.2099314} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"ae8e34000a1cc998c1ff8147f827a2a9","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.209628836Z"}]},"request_id":"1dc41146-e19b-4888-8d16-3546846a2353","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138821.2140927} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae8e34000a1cc998c1ff8147f827a2a9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ae8e34000a1cc998c1ff8147f827a2a9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae8e34000a1cc998c1ff8147f827a2a9"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"ae8e34000a1cc998c1ff8147f827a2a9","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9132e270912d5d51ade1ac02d80096ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9132e270912d5d51ade1ac02d80096ca","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5169bb51-a511-4098-8ffa-73c62cba4684/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9132e270912d5d51ade1ac02d80096ca"} device-1 | {"level":"info","message":"OPTIONS /devices/5169bb51-a511-4098-8ffa-73c62cba4684/websocket 200 1ms","method":"OPTIONS","requestID":"9132e270912d5d51ade1ac02d80096ca","responseTime":1,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cbdda3ac6547aa88f91530796b71c1d5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cbdda3ac6547aa88f91530796b71c1d5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cbdda3ac6547aa88f91530796b71c1d5"} device-1 | {"level":"info","message":"OPTIONS /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/websocket 200 1ms","method":"OPTIONS","requestID":"cbdda3ac6547aa88f91530796b71c1d5","responseTime":1,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"675ac1eacc3f74367ccf401342000690"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"675ac1eacc3f74367ccf401342000690","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"675ac1eacc3f74367ccf401342000690"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"6ea4eda78168b2226050cae46654aadd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6ea4eda78168b2226050cae46654aadd","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6ea4eda78168b2226050cae46654aadd"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.952883,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"675ac1eacc3f74367ccf401342000690","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"675ac1eacc3f74367ccf401342000690","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.6983,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6ea4eda78168b2226050cae46654aadd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6ea4eda78168b2226050cae46654aadd","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"675ac1eacc3f74367ccf401342000690"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5169bb51-a511-4098-8ffa-73c62cba4684/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"675ac1eacc3f74367ccf401342000690"} device-1 | {"level":"info","message":"POST /devices/5169bb51-a511-4098-8ffa-73c62cba4684/websocket 200 21ms","method":"POST","requestID":"675ac1eacc3f74367ccf401342000690","responseTime":21,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6ea4eda78168b2226050cae46654aadd"} device-1 | {"level":"info","message":"POST /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/websocket 200 31ms","method":"POST","requestID":"6ea4eda78168b2226050cae46654aadd","responseTime":31,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.037","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6ea4eda78168b2226050cae46654aadd"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"87ac366443f3001dbbce452310956c41"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"87ac366443f3001dbbce452310956c41","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"87ac366443f3001dbbce452310956c41"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223719,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"87ac366443f3001dbbce452310956c41","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"87ac366443f3001dbbce452310956c41","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.155751315Z"}]},"request_id":"d2facc76-e804-4664-86ad-1b7cb03ceef8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.2774277} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"87ac366443f3001dbbce452310956c41","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"87ac366443f3001dbbce452310956c41"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5169bb51-a511-4098-8ffa-73c62cba4684? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87ac366443f3001dbbce452310956c41"} device-1 | {"level":"info","message":"GET /devices/5169bb51-a511-4098-8ffa-73c62cba4684? 200 18ms","method":"GET","requestID":"87ac366443f3001dbbce452310956c41","responseTime":18,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.130346,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.209628836Z"}]},"request_id":"f7a005de-6820-4f43-8d3f-dcaccfb46073","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.3023517} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1"} device-1 | {"level":"info","message":"GET /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3? 200 16ms","method":"GET","requestID":"ec56f995eaaa2c35ab64dfe1cd4ebaf1","responseTime":16,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"364ace3f608bdad639eca9fcc7619c8e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"364ace3f608bdad639eca9fcc7619c8e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"364ace3f608bdad639eca9fcc7619c8e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.435989,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"364ace3f608bdad639eca9fcc7619c8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"364ace3f608bdad639eca9fcc7619c8e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Attempting to run experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Attempting to book experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully booked experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad41efc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad423de0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331237,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad41efc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ad41efc0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.408524,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad423de0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ad423de0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.155751315Z"}]},"request_id":"ddbcf114-d6fa-4db3-8a77-7783f084635b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.3711908} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ad41efc0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.209628836Z"}]},"request_id":"035a1a1f-14d5-4908-8df1-aa0ba22a18d1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.37854} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad41efc0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ad423de0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/5169bb51-a511-4098-8ffa-73c62cba4684? 200 24ms","method":"GET","requestID":"ad41efc0-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad423de0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3? 200 26ms","method":"GET","requestID":"ad423de0-437c-11ef-8659-f5877ab12720","responseTime":26,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Setting up experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully locked booking for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Attempting to update booking for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully updated booking for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully set up experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad506eb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad50e3e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad515910-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.035968,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad506eb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ad506eb0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.736341,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad50e3e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ad50e3e0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully running experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53ac36bc-fa76-4ed1-865c-68b508ea3205","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.4704397} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.155751315Z"}]},"request_id":"ee02a4ee-4239-4870-ba0d-0c8f4c9a6dd6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.4713132} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ad506eb0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.209628836Z"}]},"request_id":"456363f4-3f4d-4b09-8cb3-dd19adf08bf8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.4736476} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.384853,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad515910-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad506eb0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"ad515910-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/5169bb51-a511-4098-8ffa-73c62cba4684? 200 27ms","method":"GET","requestID":"ad506eb0-437c-11ef-8659-f5877ab12720","responseTime":27,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"ad50e3e0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad515910-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling 200 27ms","method":"POST","requestID":"ad515910-437c-11ef-8659-f5877ab12720","responseTime":27,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad50e3e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3? 200 31ms","method":"GET","requestID":"ad50e3e0-437c-11ef-8659-f5877ab12720","responseTime":31,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad55ecf0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad566220-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.554777,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31093f87-b051-4157-9fd3-0b11bea8aa9c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.4953265} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9824f797-467d-4203-ba52-a095d0706fca#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9824f797-467d-4203-ba52-a095d0706fca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"228ddef1-59bb-4985-b81a-776ddcbd3e9e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.4958334} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1bf77a7e-5c78-4f2d-a954-99a1f62763c1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.4961772} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad55ecf0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"ad55ecf0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.592048,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40b446ab-c5f1-45d7-978a-4beb74af31b0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.501162} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"364ace3f608bdad639eca9fcc7619c8e","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad566220-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ad566220-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad55ecf0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling 200 20ms","method":"POST","requestID":"ad55ecf0-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad566220-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling 200 19ms","method":"POST","requestID":"ad566220-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"364ace3f608bdad639eca9fcc7619c8e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad59e490-437c-11ef-8659-f5877ab12720"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.205","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 198ms","method":"POST","requestID":"364ace3f608bdad639eca9fcc7619c8e","responseTime":198,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"55fd0d48-b9dd-4cbd-b039-da6497bfb5fc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.5184247} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.901907,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad59e490-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"0f2672bb075b498109282a2c6e7337e2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0f2672bb075b498109282a2c6e7337e2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad59e490-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f2672bb075b498109282a2c6e7337e2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad59e490-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling 200 12ms","method":"POST","requestID":"ad59e490-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.94677,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Building connection plan","requestID":"364ace3f608bdad639eca9fcc7619c8e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"a4198756-aa99-41b6-b190-f41e6711a5de"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"c37c6a74-c64c-4690-8301-ac20c00d22fd"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"fb01d165-4774-4f81-90e9-34356b43cc16"}]},"level":"info","message":"Built pairwise service configurations","requestID":"364ace3f608bdad639eca9fcc7619c8e"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0f2672bb075b498109282a2c6e7337e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"364ace3f608bdad639eca9fcc7619c8e"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0f2672bb075b498109282a2c6e7337e2","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.155751315Z"}]},"request_id":"cd2cca14-ffde-4b5e-af71-09bd4369e3d6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.5305493} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0f2672bb075b498109282a2c6e7337e2","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.707606,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad5c5590-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f2672bb075b498109282a2c6e7337e2"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5169bb51-a511-4098-8ffa-73c62cba4684? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f2672bb075b498109282a2c6e7337e2"} device-1 | {"level":"info","message":"GET /devices/5169bb51-a511-4098-8ffa-73c62cba4684? 200 15ms","method":"GET","requestID":"0f2672bb075b498109282a2c6e7337e2","responseTime":15,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"124da194c68e61e4e46c00c8f42b447f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"124da194c68e61e4e46c00c8f42b447f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"124da194c68e61e4e46c00c8f42b447f"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8e01e364-659a-4075-bc94-3f634118ac2e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.5450466} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fcb1966e-9eb2-4156-b8d3-64f9ac95f016","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.5455823} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.951001,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"124da194c68e61e4e46c00c8f42b447f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"124da194c68e61e4e46c00c8f42b447f","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:01.209628836Z"}]},"request_id":"a45b291f-2561-48cd-b30b-cd85f094f6c5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.5541472} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"124da194c68e61e4e46c00c8f42b447f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d'","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d'","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 35ms","method":"POST","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720","responseTime":35,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"124da194c68e61e4e46c00c8f42b447f"} device-1 | {"level":"info","message":"GET /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3? 200 22ms","method":"GET","requestID":"124da194c68e61e4e46c00c8f42b447f","responseTime":22,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"124da194c68e61e4e46c00c8f42b447f"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ad5c5590-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"364ace3f608bdad639eca9fcc7619c8e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad66b5d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb75a0fd-c22c-4f25-9d94-b1bc23cb5dc7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.6023047} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.117454,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad66b5d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad66b5d0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad66b5d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling 200 9ms","method":"POST","requestID":"ad66b5d0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad686380-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1da8233-d386-4f5f-a427-99e1ee629258","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.6140301} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.965518,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad686380-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad686380-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad686380-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling 200 11ms","method":"POST","requestID":"ad686380-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"922c59c5-303f-4fe0-8957-ed75f9394e4d","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"40e8e371e315f96b29de5ef070983acb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"40e8e371e315f96b29de5ef070983acb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d"}}},"level":"info","message":"received a callback","requestID":"40e8e371e315f96b29de5ef070983acb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"40e8e371e315f96b29de5ef070983acb","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"40e8e371e315f96b29de5ef070983acb"} device-1 | {"data":{"peerconnection":"922c59c5-303f-4fe0-8957-ed75f9394e4d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"922c59c5-303f-4fe0-8957-ed75f9394e4d","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"922c59c5-303f-4fe0-8957-ed75f9394e4d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f030f7842f8fdeef1d2614b4d7cf1a3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f030f7842f8fdeef1d2614b4d7cf1a3d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d"}}},"level":"info","message":"received a callback","requestID":"f030f7842f8fdeef1d2614b4d7cf1a3d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ad74bf90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F922c59c5-303f-4fe0-8957-ed75f9394e4d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"209dbceb-87bf-4e1d-8611-daf81153aaee","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.6934805} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.166792,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad74bf90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad74bf90-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ad74bf90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d 200 8ms","method":"GET","requestID":"ad74bf90-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"f030f7842f8fdeef1d2614b4d7cf1a3d","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"f030f7842f8fdeef1d2614b4d7cf1a3d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad78de40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41b811ec-eec1-4e3f-a0c5-5e908bc17e40","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.7202494} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.105701,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad78de40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad78de40-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad78de40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling 200 9ms","method":"POST","requestID":"ad78de40-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad7a8bf0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ed632e2-7057-4726-a127-d04ceab81b7c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.7318153} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.18911,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad7a8bf0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad7a8bf0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad7a8bf0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling 200 9ms","method":"POST","requestID":"ad7a8bf0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"31161375cb84d6bdea29edf19c1e12c1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"31161375cb84d6bdea29edf19c1e12c1","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9824f797-467d-4203-ba52-a095d0706fca","requestID":"31161375cb84d6bdea29edf19c1e12c1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.86365,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"31161375cb84d6bdea29edf19c1e12c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"31161375cb84d6bdea29edf19c1e12c1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9824f797-467d-4203-ba52-a095d0706fca","requestID":"31161375cb84d6bdea29edf19c1e12c1"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9824f797-467d-4203-ba52-a095d0706fca HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31161375cb84d6bdea29edf19c1e12c1"} experiment-1 | {"level":"info","message":"GET /experiments/9824f797-467d-4203-ba52-a095d0706fca 200 11ms","method":"GET","requestID":"31161375cb84d6bdea29edf19c1e12c1","responseTime":11,"status":200,"url":"/experiments/9824f797-467d-4203-ba52-a095d0706fca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9824f797-467d-4203-ba52-a095d0706fca","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.160433,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Attempting to finish experiment","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ad856160-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.216373,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad856160-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad856160-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"922c59c5-303f-4fe0-8957-ed75f9394e4d","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F922c59c5-303f-4fe0-8957-ed75f9394e4d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F922c59c5-303f-4fe0-8957-ed75f9394e4d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"7f0b41e5-0b6a-408d-96b7-79cdb2625715","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.823217} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86cd626e5e1c358985e1daf75568543a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"86cd626e5e1c358985e1daf75568543a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"321f278e-eff1-4aed-bd8c-090ac27433cb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.8239222} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"ad856160-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d"}}},"level":"info","message":"received a callback","requestID":"86cd626e5e1c358985e1daf75568543a"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2fa24c2d92ca71828770e4d62ccd63f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2fa24c2d92ca71828770e4d62ccd63f2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d"}}},"level":"info","message":"received a callback","requestID":"2fa24c2d92ca71828770e4d62ccd63f2"} device-1 | {"data":{"peerconnection":"922c59c5-303f-4fe0-8957-ed75f9394e4d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ad856160-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d 204 52ms","method":"DELETE","requestID":"ad856160-437c-11ef-8659-f5877ab12720","responseTime":52,"status":204,"url":"/peerconnections/922c59c5-303f-4fe0-8957-ed75f9394e4d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9824f797-467d-4203-ba52-a095d0706fca"},"level":"info","message":"Successfully finished experiment","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad8fc1a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05ddb770-2287-492a-98e1-4a32acba1def","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.8713055} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.785255,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad8fc1a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ad8fc1a0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad8fc1a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling 200 12ms","method":"POST","requestID":"ad8fc1a0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9824f797-467d-4203-ba52-a095d0706fca': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9824f797-467d-4203-ba52-a095d0706fca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"af14e242-eba5-46e8-8b00-98145eca339e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.8789449} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a52feb1e-bf5d-4d80-bd0c-419b1ad28592","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.8792765} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad91e480-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5169bb51-a511-4098-8ffa-73c62cba4684","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2ec7e56-ac88-4ff6-a8a2-1a524dc050f2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.8866394} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.952913,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad91e480-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad91e480-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad91e480-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling 200 12ms","method":"POST","requestID":"ad91e480-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/5169bb51-a511-4098-8ffa-73c62cba4684/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9824f797-467d-4203-ba52-a095d0706fca","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9824f797-467d-4203-ba52-a095d0706fca HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b"} experiment-1 | {"level":"info","message":"DELETE /experiments/9824f797-467d-4203-ba52-a095d0706fca 204 159ms","method":"DELETE","requestID":"2cc45f6d8d7bb61288cd0adca3c8c39b","responseTime":159,"status":204,"url":"/experiments/9824f797-467d-4203-ba52-a095d0706fca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"86cd626e5e1c358985e1daf75568543a","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"86cd626e5e1c358985e1daf75568543a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"2fa24c2d92ca71828770e4d62ccd63f2","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"2fa24c2d92ca71828770e4d62ccd63f2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE","level":"info","message":"auth send jwt","requestID":"0c2eee30e6cab5e7b8b062274248906d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0c2eee30e6cab5e7b8b062274248906d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0c2eee30e6cab5e7b8b062274248906d"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2888","request_time":"0.732","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3cc8eaf8b50c08391882d2b1254e5f53"} gateway-1 | {"time_local":"16/Jul/2024:14:07:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"0.721","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2b4a90a1b71ba4a9f9605d3f368bd83f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.033713,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0c2eee30e6cab5e7b8b062274248906d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138823,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyM30.CHmmsLowF_TGa_iwXT4WNjiUCZdaWgi47iUQG80lsBE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c2eee30e6cab5e7b8b062274248906d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ecd7fc3f-b3ad-4030-bf21-950a4d9f96d3' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5169bb51-a511-4098-8ffa-73c62cba4684' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"939c093a-fcba-42c5-be07-d451735cec63","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.9792857} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0c2eee30e6cab5e7b8b062274248906d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6662537-4b07-4fdd-bf2d-25cbe674494e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.9836779} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0c2eee30e6cab5e7b8b062274248906d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"c4a999eb-082d-43dc-b298-89505050abcb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.994168} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f479a4a-feab-42f5-afb6-f57faddbfcff","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.9942791} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0c2eee30e6cab5e7b8b062274248906d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:03.994149924Z"}]},"request_id":"6782e76d-15f6-4e7f-9fca-7bd80b886c78","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138823.9979067} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0c2eee30e6cab5e7b8b062274248906d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0c2eee30e6cab5e7b8b062274248906d"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"0c2eee30e6cab5e7b8b062274248906d","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c2eee30e6cab5e7b8b062274248906d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNH0.5cttfJpZ5pSrrXZk1zvrDchvsVqGero_1ekjxO0Sn50","level":"info","message":"auth send jwt","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.763236,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138824,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNH0.5cttfJpZ5pSrrXZk1zvrDchvsVqGero_1ekjxO0Sn50"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"268dcc6a-f5ae-4bc0-81b0-04ecd88401a8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138824.0234864} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"034b25e9-2498-48d6-ab15-3813bc2ec34b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138824.0280688} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"3ac044ef-4f63-4509-8af1-36113047b7d9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138824.0437446} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cab7620c-4454-4791-afa9-3ef9d0d91be8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138824.043841} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:04.043718413Z"}]},"request_id":"3d156a65-914e-4d3f-822f-e6e8bdae5cd4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138824.048733} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cbbefa3d98b898081f5cec4fb6d81d2f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"553ed09f2f661358d7452bbd89e9cf98","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"553ed09f2f661358d7452bbd89e9cf98","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7480d41e983c19e155a3c213ab9e2d90","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"553ed09f2f661358d7452bbd89e9cf98"} device-1 | {"level":"info","message":"OPTIONS /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/websocket 200 2ms","method":"OPTIONS","requestID":"553ed09f2f661358d7452bbd89e9cf98","responseTime":2,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7480d41e983c19e155a3c213ab9e2d90","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/460b3640-d466-498f-9621-53f1b6d12805/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7480d41e983c19e155a3c213ab9e2d90"} device-1 | {"level":"info","message":"OPTIONS /devices/460b3640-d466-498f-9621-53f1b6d12805/websocket 200 1ms","method":"OPTIONS","requestID":"7480d41e983c19e155a3c213ab9e2d90","responseTime":1,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"3cb650942794e02fc53351cc65dfd210"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"3cb650942794e02fc53351cc65dfd210","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"a66e558e2fe64623b93843241bcfc5cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3cb650942794e02fc53351cc65dfd210"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"a66e558e2fe64623b93843241bcfc5cd","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a66e558e2fe64623b93843241bcfc5cd"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070316,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3cb650942794e02fc53351cc65dfd210","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3cb650942794e02fc53351cc65dfd210","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179547,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a66e558e2fe64623b93843241bcfc5cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a66e558e2fe64623b93843241bcfc5cd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a66e558e2fe64623b93843241bcfc5cd"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/460b3640-d466-498f-9621-53f1b6d12805/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a66e558e2fe64623b93843241bcfc5cd"} device-1 | {"level":"info","message":"POST /devices/460b3640-d466-498f-9621-53f1b6d12805/websocket 200 18ms","method":"POST","requestID":"a66e558e2fe64623b93843241bcfc5cd","responseTime":18,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3cb650942794e02fc53351cc65dfd210"} device-1 | {"level":"info","message":"POST /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/websocket 200 30ms","method":"POST","requestID":"3cb650942794e02fc53351cc65dfd210","responseTime":30,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3cb650942794e02fc53351cc65dfd210"} device-1 | {"level":"info","message":"device 'http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"d3a3c77323c19325413152d44f618e30"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d3a3c77323c19325413152d44f618e30","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3a3c77323c19325413152d44f618e30"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124847,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d3a3c77323c19325413152d44f618e30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3a3c77323c19325413152d44f618e30","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:03.994149924Z"}]},"request_id":"832ad3b5-719c-476a-8b64-cca3799fea00","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.129279} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d3a3c77323c19325413152d44f618e30","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3a3c77323c19325413152d44f618e30"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/460b3640-d466-498f-9621-53f1b6d12805? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3a3c77323c19325413152d44f618e30"} device-1 | {"level":"info","message":"GET /devices/460b3640-d466-498f-9621-53f1b6d12805? 200 16ms","method":"GET","requestID":"d3a3c77323c19325413152d44f618e30","responseTime":16,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"d985bcc3a924613098bd8b51115c9a97"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d985bcc3a924613098bd8b51115c9a97","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d985bcc3a924613098bd8b51115c9a97"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.38032,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d985bcc3a924613098bd8b51115c9a97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d985bcc3a924613098bd8b51115c9a97","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:04.043718413Z"}]},"request_id":"0dedd101-2b6f-45d6-9060-c32e262bc2fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.1552281} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d985bcc3a924613098bd8b51115c9a97","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d985bcc3a924613098bd8b51115c9a97"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d985bcc3a924613098bd8b51115c9a97"} device-1 | {"level":"info","message":"GET /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc? 200 19ms","method":"GET","requestID":"d985bcc3a924613098bd8b51115c9a97","responseTime":19,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"3595c9d472024c06937a475fbcfccb4a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3595c9d472024c06937a475fbcfccb4a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3595c9d472024c06937a475fbcfccb4a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.317308,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3595c9d472024c06937a475fbcfccb4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3595c9d472024c06937a475fbcfccb4a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Attempting to run experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Attempting to book experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully booked experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aef80430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aef82b40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906993,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aef80430-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aef80430-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.770157,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aef82b40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aef82b40-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:03.994149924Z"}]},"request_id":"cf9e5bce-05e0-4c35-8007-9d28628b6155","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.2370634} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aef80430-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:04.043718413Z"}]},"request_id":"da608538-3929-40d4-8338-d1232749ce0d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.238844} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aef82b40-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aef80430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/460b3640-d466-498f-9621-53f1b6d12805? 200 18ms","method":"GET","requestID":"aef80430-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aef82b40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc? 200 18ms","method":"GET","requestID":"aef82b40-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Setting up experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully set up experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af0300b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"af0375e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af03c400-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.222004,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully running experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af0300b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af0300b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.775181,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af0375e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af0375e0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:03.994149924Z"}]},"request_id":"d73cd557-a25e-4f38-8c45-cfbb78ec2feb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.315819} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:04.043718413Z"}]},"request_id":"f4d65bbe-8c26-407e-b95d-e0855ce6e6b9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3168576} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"af0300b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af0375e0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09efad34-76a8-4602-b7ab-0c2816f2eea1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3189726} authorization-1 | {"client_addr":"127.0.0.1:38596","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:38596","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.522413,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af03c400-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"af03c400-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af0300b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/460b3640-d466-498f-9621-53f1b6d12805? 200 26ms","method":"GET","requestID":"af0300b0-437c-11ef-8659-f5877ab12720","responseTime":26,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"af0375e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc? 200 24ms","method":"GET","requestID":"af0375e0-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8ed7781-aa58-4a06-9fb8-94be6efc6269#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8ed7781-aa58-4a06-9fb8-94be6efc6269","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8d6cfd97-54a6-401e-9a68-4316afc765bc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.327248} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af03c400-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/460b3640-d466-498f-9621-53f1b6d12805/signaling 200 24ms","method":"POST","requestID":"af03c400-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0145d467-c4b5-4e96-81ed-9106766a50e3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3276792} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af079490-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"3595c9d472024c06937a475fbcfccb4a","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af07e2b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b92da361-91ce-48b8-b120-2aff59c43102","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3354151} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.320426,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af079490-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af079490-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.51513,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59ef88aa-e82a-41ed-9bbe-dd6ca017f62f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.337016} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3595c9d472024c06937a475fbcfccb4a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af07e2b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af07e2b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.176","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 168ms","method":"POST","requestID":"3595c9d472024c06937a475fbcfccb4a","responseTime":168,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af079490-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/460b3640-d466-498f-9621-53f1b6d12805/signaling 200 13ms","method":"POST","requestID":"af079490-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af07e2b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling 200 11ms","method":"POST","requestID":"af07e2b0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af09de80-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"17e38239f65bf4aff83264e9659d4e16"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"17e38239f65bf4aff83264e9659d4e16","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17e38239f65bf4aff83264e9659d4e16"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.704835,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"17e38239f65bf4aff83264e9659d4e16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"17e38239f65bf4aff83264e9659d4e16","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f47f0d47-a8a6-4d9a-9d48-a29ac9cbb6d6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3502898} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.712847,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af09de80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af09de80-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:03.994149924Z"}]},"request_id":"d0cb4b73-8715-4a2a-9050-0957da82793b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3548212} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af09de80-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"17e38239f65bf4aff83264e9659d4e16","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling 200 12ms","method":"POST","requestID":"af09de80-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Building connection plan","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"bd6399d2-6d9f-42eb-9c66-d369ade73cf4"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"5e2fbb9d-b717-4ffb-83e0-1ce8e85aa58a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"f9ac34e6-e601-4359-b273-689bf7a324a8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3595c9d472024c06937a475fbcfccb4a"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3595c9d472024c06937a475fbcfccb4a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"af0c2870-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17e38239f65bf4aff83264e9659d4e16"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/460b3640-d466-498f-9621-53f1b6d12805? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"17e38239f65bf4aff83264e9659d4e16"} device-1 | {"level":"info","message":"GET /devices/460b3640-d466-498f-9621-53f1b6d12805? 200 14ms","method":"GET","requestID":"17e38239f65bf4aff83264e9659d4e16","responseTime":14,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.859966,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af0c2870-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"af0c2870-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"4b1029eb31d96ceb8a86218d951b31c1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4b1029eb31d96ceb8a86218d951b31c1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b1029eb31d96ceb8a86218d951b31c1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78161,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4b1029eb31d96ceb8a86218d951b31c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4b1029eb31d96ceb8a86218d951b31c1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"bd66a8cd-0c37-4230-b99e-45fe4ff26400","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.37595} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e140b05d-8b25-419f-8e9f-668ddeaa0e5b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3760595} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:04.043718413Z"}]},"request_id":"96cbc005-ea3b-4dd0-81d7-c1e917d16824","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.3767614} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"af0c2870-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4b1029eb31d96ceb8a86218d951b31c1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b1029eb31d96ceb8a86218d951b31c1"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b1029eb31d96ceb8a86218d951b31c1"} device-1 | {"level":"info","message":"GET /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc? 200 14ms","method":"GET","requestID":"4b1029eb31d96ceb8a86218d951b31c1","responseTime":14,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"af0c2870-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"af0c2870-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92'","requestID":"af0c2870-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92'","requestID":"af0c2870-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"af0c2870-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 33ms","method":"POST","requestID":"af0c2870-437c-11ef-8659-f5877ab12720","responseTime":33,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"af0c2870-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3595c9d472024c06937a475fbcfccb4a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af15c560-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"305b9823-9ff1-4e66-b141-85ffda64d792","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.4262474} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.481131,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af15c560-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af15c560-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af15c560-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/460b3640-d466-498f-9621-53f1b6d12805/signaling 200 8ms","method":"POST","requestID":"af15c560-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af174c00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a45d602-bc0c-4cf9-a4ba-03549f8c5845","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.4360974} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.267782,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af174c00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af174c00-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af174c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling 200 7ms","method":"POST","requestID":"af174c00-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"271c6497-1f9a-4f12-a7dc-74b751ec6b92","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0dceaa3f36e5edc02aad4dcadbf221b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0dceaa3f36e5edc02aad4dcadbf221b9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92"}}},"level":"info","message":"received a callback","requestID":"0dceaa3f36e5edc02aad4dcadbf221b9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"0dceaa3f36e5edc02aad4dcadbf221b9","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"0dceaa3f36e5edc02aad4dcadbf221b9"} device-1 | {"data":{"peerconnection":"271c6497-1f9a-4f12-a7dc-74b751ec6b92","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"271c6497-1f9a-4f12-a7dc-74b751ec6b92","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"271c6497-1f9a-4f12-a7dc-74b751ec6b92","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"47921d96a95bc9f51137064687dd6fd1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"47921d96a95bc9f51137064687dd6fd1","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92"}}},"level":"info","message":"received a callback","requestID":"47921d96a95bc9f51137064687dd6fd1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"af2507a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F271c6497-1f9a-4f12-a7dc-74b751ec6b92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15ae2b54-dc89-4451-aebe-75357ee16d3f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.527138} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.140429,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af2507a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af2507a0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"af2507a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92 200 9ms","method":"GET","requestID":"af2507a0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"47921d96a95bc9f51137064687dd6fd1","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"47921d96a95bc9f51137064687dd6fd1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af29e9a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13006b41-4233-42e2-ac86-f035aa6de450","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.5590484} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.08886,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af29e9a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af29e9a0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af29e9a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling 200 9ms","method":"POST","requestID":"af29e9a0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af2b9750-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e50b3c3a-d3ea-4f33-9c21-a937ca532c71","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.569385} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.228221,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af2b9750-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af2b9750-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af2b9750-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/460b3640-d466-498f-9621-53f1b6d12805/signaling 200 8ms","method":"POST","requestID":"af2b9750-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"7dec13c6c75657925020544327194735"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7dec13c6c75657925020544327194735","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","requestID":"7dec13c6c75657925020544327194735"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.642593,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7dec13c6c75657925020544327194735","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7dec13c6c75657925020544327194735","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","requestID":"7dec13c6c75657925020544327194735"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269 HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7dec13c6c75657925020544327194735"} experiment-1 | {"level":"info","message":"GET /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269 200 11ms","method":"GET","requestID":"7dec13c6c75657925020544327194735","responseTime":11,"status":200,"url":"/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"b801c10157b76c56f86ab832cbc66caf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b801c10157b76c56f86ab832cbc66caf","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","requestID":"b801c10157b76c56f86ab832cbc66caf"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.187713,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b801c10157b76c56f86ab832cbc66caf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b801c10157b76c56f86ab832cbc66caf","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Attempting to finish experiment","requestID":"b801c10157b76c56f86ab832cbc66caf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"af361ea0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.205884,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af361ea0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af361ea0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"271c6497-1f9a-4f12-a7dc-74b751ec6b92","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F271c6497-1f9a-4f12-a7dc-74b751ec6b92': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F271c6497-1f9a-4f12-a7dc-74b751ec6b92","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"6a28c603-6336-4c0a-9c4a-30a12c609418","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.6495914} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c2bd5afa7264244b404dd6587afae09","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"362f1952-e4ef-4ae0-b092-f90f72623f42","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.6498368} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7c2bd5afa7264244b404dd6587afae09","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d031896da29af290e0443ec72e1261d0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"af361ea0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92"}}},"level":"info","message":"received a callback","requestID":"7c2bd5afa7264244b404dd6587afae09"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d031896da29af290e0443ec72e1261d0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92"}}},"level":"info","message":"received a callback","requestID":"d031896da29af290e0443ec72e1261d0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"af361ea0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92 204 22ms","method":"DELETE","requestID":"af361ea0-437c-11ef-8659-f5877ab12720","responseTime":22,"status":204,"url":"/peerconnections/271c6497-1f9a-4f12-a7dc-74b751ec6b92"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"},"level":"info","message":"Successfully finished experiment","requestID":"b801c10157b76c56f86ab832cbc66caf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af3c3920-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4f4f5a6d-6172-400e-85f0-b47b807546fc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60751e04-8bc5-42db-82ac-5cc870fb6227","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.6803727} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220874,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af3c3920-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af3c3920-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af3c3920-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling 200 10ms","method":"POST","requestID":"af3c3920-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"af3e34f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8ed7781-aa58-4a06-9fb8-94be6efc6269': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd8ed7781-aa58-4a06-9fb8-94be6efc6269","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"a60706d1-0482-46d5-96c1-62abf37c739c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.6878898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"071a7732-5466-4da1-a002-24a15e104e57","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.6880329} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b801c10157b76c56f86ab832cbc66caf","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F460b3640-d466-498f-9621-53f1b6d12805","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"504982c2-b993-4b7f-99bb-c16a7b6b27e1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.692082} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.37652,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af3e34f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af3e34f0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"af3e34f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/460b3640-d466-498f-9621-53f1b6d12805/signaling 200 9ms","method":"POST","requestID":"af3e34f0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/460b3640-d466-498f-9621-53f1b6d12805/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269","requestID":"b801c10157b76c56f86ab832cbc66caf"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b801c10157b76c56f86ab832cbc66caf"} experiment-1 | {"level":"info","message":"DELETE /experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269 204 122ms","method":"DELETE","requestID":"b801c10157b76c56f86ab832cbc66caf","responseTime":122,"status":204,"url":"/experiments/d8ed7781-aa58-4a06-9fb8-94be6efc6269"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 93ms","method":"POST","requestID":"7c2bd5afa7264244b404dd6587afae09","responseTime":93,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.097","http_referrer":"","http_user_agent":"node-fetch","requestID":"7c2bd5afa7264244b404dd6587afae09"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 93ms","method":"POST","requestID":"d031896da29af290e0443ec72e1261d0","responseTime":93,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.098","http_referrer":"","http_user_agent":"node-fetch","requestID":"d031896da29af290e0443ec72e1261d0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"6b7719284d2b7662241ae2957ea64857"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6b7719284d2b7662241ae2957ea64857","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b7719284d2b7662241ae2957ea64857"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2887","request_time":"0.666","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8e23664caf05b59ebd565d7248cc8b4e"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2885","request_time":"0.657","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"71ab558590913a1c69375ca9ec84fb61"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.75576,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6b7719284d2b7662241ae2957ea64857","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6b7719284d2b7662241ae2957ea64857","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4f4f5a6d-6172-400e-85f0-b47b807546fc' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/460b3640-d466-498f-9621-53f1b6d12805' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e24743cb-8acb-42f8-a0aa-388ab9d73c2a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.7678869} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6b7719284d2b7662241ae2957ea64857","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2d0505c5-fa23-40d6-a71c-68ee1d3c292b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.7721794} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6b7719284d2b7662241ae2957ea64857","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"152639d6-a3a1-4e85-af0a-6e1f5e802708","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.7888892} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ef70229-6ff8-42d4-8288-eda0a1284c2b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.788998} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"6b7719284d2b7662241ae2957ea64857","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.788870497Z"}]},"request_id":"b4f63d9c-5e18-4c9b-9f49-7fd75d4ce83c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.7928584} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6b7719284d2b7662241ae2957ea64857","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b7719284d2b7662241ae2957ea64857"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"6b7719284d2b7662241ae2957ea64857","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b7719284d2b7662241ae2957ea64857"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ","level":"info","message":"auth send jwt","requestID":"1c0dce5e2c18d03cc56df923b1b1d661"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1c0dce5e2c18d03cc56df923b1b1d661","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1c0dce5e2c18d03cc56df923b1b1d661"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.68718,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"1c0dce5e2c18d03cc56df923b1b1d661","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138826,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyNn0.0j_rc2f7BvRnJvNkHRR7SZSHbfULEhs29JvFUhdncKQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1c0dce5e2c18d03cc56df923b1b1d661","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6c3157ad-e2fc-41f1-8fdd-c2bb08c2c2f7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.8177085} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1c0dce5e2c18d03cc56df923b1b1d661","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b3d824a-f902-4b00-bc40-96825e3e115a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.8227804} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1c0dce5e2c18d03cc56df923b1b1d661","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"58d3be8d-73b1-4291-90b7-88104386a6e9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.8346899} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"69ee28b5-1a73-44d2-b720-c30e5455cf2d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.834728} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1c0dce5e2c18d03cc56df923b1b1d661","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.834664149Z"}]},"request_id":"9674369c-e89f-4355-82df-75485a7ca389","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138826.838331} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1c0dce5e2c18d03cc56df923b1b1d661","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1c0dce5e2c18d03cc56df923b1b1d661"} gateway-1 | {"time_local":"16/Jul/2024:14:07:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1c0dce5e2c18d03cc56df923b1b1d661"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"1c0dce5e2c18d03cc56df923b1b1d661","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyN30.LbABKOOeSJShIWKs3N3wCeZIen3l8Pg6Q6o2g61CmZk","level":"info","message":"auth send jwt","requestID":"13ba26860cc3f80ac098ac22be5027a6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"13ba26860cc3f80ac098ac22be5027a6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"13ba26860cc3f80ac098ac22be5027a6"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.248586,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"13ba26860cc3f80ac098ac22be5027a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138827,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyN30.LbABKOOeSJShIWKs3N3wCeZIen3l8Pg6Q6o2g61CmZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"13ba26860cc3f80ac098ac22be5027a6","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.834664149Z"}]},"request_id":"4c9c5e70-a025-4a2f-a214-18b972dd9729","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138827.3327618} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13ba26860cc3f80ac098ac22be5027a6","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3c6de88f-85e4-4da4-8a88-83baf43b1246","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138827.34062} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"13ba26860cc3f80ac098ac22be5027a6","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.834664149Z"}]},"request_id":"c8e03631-ca35-49c2-bba7-766f5c1bd118","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138827.3541157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13ba26860cc3f80ac098ac22be5027a6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"13ba26860cc3f80ac098ac22be5027a6"} gateway-1 | {"time_local":"16/Jul/2024:14:07:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/026123a2-8e99-41af-9b86-b97b78a39957 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"13ba26860cc3f80ac098ac22be5027a6"} device-1 | {"level":"info","message":"PATCH /devices/026123a2-8e99-41af-9b86-b97b78a39957 200 39ms","method":"PATCH","requestID":"13ba26860cc3f80ac098ac22be5027a6","responseTime":39,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyN30.LbABKOOeSJShIWKs3N3wCeZIen3l8Pg6Q6o2g61CmZk","level":"info","message":"auth send jwt","requestID":"dcd31889b59fb9dd5acfb0e42606338f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dcd31889b59fb9dd5acfb0e42606338f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dcd31889b59fb9dd5acfb0e42606338f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.294115,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"dcd31889b59fb9dd5acfb0e42606338f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138827,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyN30.LbABKOOeSJShIWKs3N3wCeZIen3l8Pg6Q6o2g61CmZk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dcd31889b59fb9dd5acfb0e42606338f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dcd31889b59fb9dd5acfb0e42606338f"} device-1 | {"level":"info","message":"POST /devices/026123a2-8e99-41af-9b86-b97b78a39957/websocket 200 22ms","method":"POST","requestID":"dcd31889b59fb9dd5acfb0e42606338f","responseTime":22,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/026123a2-8e99-41af-9b86-b97b78a39957/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"dcd31889b59fb9dd5acfb0e42606338f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"94176d983bdfae660a304bba915f0e52","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"94176d983bdfae660a304bba915f0e52","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6d535929-d25a-441c-9335-af9eec604a59/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"94176d983bdfae660a304bba915f0e52"} device-1 | {"level":"info","message":"OPTIONS /devices/6d535929-d25a-441c-9335-af9eec604a59/websocket 200 1ms","method":"OPTIONS","requestID":"94176d983bdfae660a304bba915f0e52","responseTime":1,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk","level":"info","message":"auth send jwt","requestID":"e0a053c2f5022b007ec2201151b0dc33"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e0a053c2f5022b007ec2201151b0dc33","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e0a053c2f5022b007ec2201151b0dc33"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.294347,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e0a053c2f5022b007ec2201151b0dc33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e0a053c2f5022b007ec2201151b0dc33","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e0a053c2f5022b007ec2201151b0dc33"} gateway-1 | {"time_local":"16/Jul/2024:14:07:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6d535929-d25a-441c-9335-af9eec604a59/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e0a053c2f5022b007ec2201151b0dc33"} device-1 | {"level":"info","message":"POST /devices/6d535929-d25a-441c-9335-af9eec604a59/websocket 200 23ms","method":"POST","requestID":"e0a053c2f5022b007ec2201151b0dc33","responseTime":23,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk","level":"info","message":"auth send jwt","requestID":"c26b7359a88a513d8c6cfa6147fa74c0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c26b7359a88a513d8c6cfa6147fa74c0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c26b7359a88a513d8c6cfa6147fa74c0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.164713,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c26b7359a88a513d8c6cfa6147fa74c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c26b7359a88a513d8c6cfa6147fa74c0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.788870497Z"}]},"request_id":"6aecda5f-543e-4ba1-98f3-09b4b0c557af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138828.8739843} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c26b7359a88a513d8c6cfa6147fa74c0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c26b7359a88a513d8c6cfa6147fa74c0"} gateway-1 | {"time_local":"16/Jul/2024:14:07:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d535929-d25a-441c-9335-af9eec604a59? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c26b7359a88a513d8c6cfa6147fa74c0"} device-1 | {"level":"info","message":"GET /devices/6d535929-d25a-441c-9335-af9eec604a59? 200 14ms","method":"GET","requestID":"c26b7359a88a513d8c6cfa6147fa74c0","responseTime":14,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk","level":"info","message":"auth send jwt","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706162,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"dad5c215cd2d0e1d9923f9575ed2cecc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.834664149Z"}]},"request_id":"fc94c59f-8df4-4f75-b9cb-121569fa3df2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138828.8888369} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc"} gateway-1 | {"time_local":"16/Jul/2024:14:07:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/026123a2-8e99-41af-9b86-b97b78a39957? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc"} device-1 | {"level":"info","message":"GET /devices/026123a2-8e99-41af-9b86-b97b78a39957? 200 11ms","method":"GET","requestID":"dad5c215cd2d0e1d9923f9575ed2cecc","responseTime":11,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk","level":"info","message":"auth send jwt","requestID":"15bfda56cd25ca54bddf01907c532ef4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"15bfda56cd25ca54bddf01907c532ef4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"15bfda56cd25ca54bddf01907c532ef4"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":2.370319,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"15bfda56cd25ca54bddf01907c532ef4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15bfda56cd25ca54bddf01907c532ef4","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Attempting to run experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Attempting to book experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully booked experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0973540-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0978360-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.822391,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0973540-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b0973540-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.949529,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0978360-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0978360-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.788870497Z"}]},"request_id":"c942247c-a055-4366-a576-47ef7e84e96b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138828.9614732} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b0973540-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.834664149Z"}]},"request_id":"04350698-1727-40fc-ba32-43c0ce694d24","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138828.962848} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b0978360-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0973540-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/6d535929-d25a-441c-9335-af9eec604a59? 200 22ms","method":"GET","requestID":"b0973540-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0978360-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/026123a2-8e99-41af-9b86-b97b78a39957? 200 22ms","method":"GET","requestID":"b0978360-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Setting up experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully set up experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0a34330-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0a3b860-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0a42d90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.946909,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0a34330-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully running experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b0a34330-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.00493,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0a3b860-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b0a3b860-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.327486,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62381373-72d0-4fde-8d83-20f1fd01a296","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.0404737} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0a42d90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b0a42d90-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.788870497Z"}]},"request_id":"942e346a-84f8-485d-942c-386916e4a906","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.0452275} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0a42d90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/6d535929-d25a-441c-9335-af9eec604a59/signaling 200 18ms","method":"POST","requestID":"b0a42d90-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"b0a34330-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.834664149Z"}]},"request_id":"45a844e5-cf09-4372-8fee-2a7b2df532f1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.0510507} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"b0a3b860-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0a7d710-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0a34330-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/6d535929-d25a-441c-9335-af9eec604a59? 200 35ms","method":"GET","requestID":"b0a34330-437c-11ef-8659-f5877ab12720","responseTime":35,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0a3b860-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/026123a2-8e99-41af-9b86-b97b78a39957? 200 33ms","method":"GET","requestID":"b0a3b860-437c-11ef-8659-f5877ab12720","responseTime":33,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7db5e52b-641b-464f-8343-7c64bb949d86","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.063859} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.407182,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0a7d710-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0a936a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b0a7d710-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F68611db3-8ed6-4b13-a6c2-1e69bddcfe2d#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"36e1272b-f2ff-47e6-9c3b-3493df558697","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.0652363} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"408b6e31-486e-4ee6-9891-20ec269a6ee7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.0655513} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"15bfda56cd25ca54bddf01907c532ef4","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0a7d710-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} device-1 | {"level":"info","message":"POST /devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling 200 12ms","method":"POST","requestID":"b0a7d710-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cb35445-3745-4149-865f-5b7f6535f49e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.071394} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.521356,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0a936a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0a936a0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"15bfda56cd25ca54bddf01907c532ef4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0a936a0-437c-11ef-8659-f5877ab12720"} gateway-1 | {"time_local":"16/Jul/2024:14:07:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 178ms","method":"POST","requestID":"15bfda56cd25ca54bddf01907c532ef4","responseTime":178,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/6d535929-d25a-441c-9335-af9eec604a59/signaling 200 11ms","method":"POST","requestID":"b0a936a0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0ab5980-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOX0.X9FjhU55O3KytOpjaNwg25gMUb8PgEJm27wnLPL9jIM","level":"info","message":"auth send jwt","requestID":"6c1bd57923632e7d9875f4d051939551"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6c1bd57923632e7d9875f4d051939551","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6c1bd57923632e7d9875f4d051939551"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18235d65-5025-42fb-af51-fd708790205f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.0846748} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.26947,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0ab5980-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0ab5980-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38588","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.800573,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6c1bd57923632e7d9875f4d051939551","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138829,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOX0.X9FjhU55O3KytOpjaNwg25gMUb8PgEJm27wnLPL9jIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6c1bd57923632e7d9875f4d051939551","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0ab5980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling 200 10ms","method":"POST","requestID":"b0ab5980-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.788870497Z"}]},"request_id":"4db2d263-772b-4be4-bff3-5ef9c3186cb6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.0911021} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6c1bd57923632e7d9875f4d051939551","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Building connection plan","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"908bdb04-11a3-4db9-92ea-a7a7eeb7499a"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"f5b7a5a0-bc70-4e1b-9573-87d02b8e3886"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"64018dee-4eb8-451f-b4ae-e4693fa77227"}]},"level":"info","message":"Built pairwise service configurations","requestID":"15bfda56cd25ca54bddf01907c532ef4"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"15bfda56cd25ca54bddf01907c532ef4"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b0ada370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6c1bd57923632e7d9875f4d051939551"} device-1 | {"level":"info","message":"GET /devices/6d535929-d25a-441c-9335-af9eec604a59? 200 16ms","method":"GET","requestID":"6c1bd57923632e7d9875f4d051939551","responseTime":16,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d535929-d25a-441c-9335-af9eec604a59? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c1bd57923632e7d9875f4d051939551"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.073284,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0ada370-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138828,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOH0.V6B28NVLbYWYpbosEK-9N4pyU2zhsICr8iGUb0JIoUk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b0ada370-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOX0.X9FjhU55O3KytOpjaNwg25gMUb8PgEJm27wnLPL9jIM","level":"info","message":"auth send jwt","requestID":"e4b8f473b9d50aee527222bf4d3a76a1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e4b8f473b9d50aee527222bf4d3a76a1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4b8f473b9d50aee527222bf4d3a76a1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.005912,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e4b8f473b9d50aee527222bf4d3a76a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138829,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgyOX0.X9FjhU55O3KytOpjaNwg25gMUb8PgEJm27wnLPL9jIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e4b8f473b9d50aee527222bf4d3a76a1","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8d71101b-0472-4436-a3c6-5fe31a72f529","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.1119664} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10501426-e172-4a4b-9882-91442abe7270","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.1122396} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"b0ada370-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:06.834664149Z"}]},"request_id":"a8680fc7-8c66-4709-bd16-332084e06f7f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.1223586} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4b8f473b9d50aee527222bf4d3a76a1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0ada370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0ada370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8'","requestID":"b0ada370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8'","requestID":"b0ada370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b0ada370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 39ms","method":"POST","requestID":"b0ada370-437c-11ef-8659-f5877ab12720","responseTime":39,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4b8f473b9d50aee527222bf4d3a76a1"} device-1 | {"level":"info","message":"GET /devices/026123a2-8e99-41af-9b86-b97b78a39957? 200 28ms","method":"GET","requestID":"e4b8f473b9d50aee527222bf4d3a76a1","responseTime":28,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/026123a2-8e99-41af-9b86-b97b78a39957? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4b8f473b9d50aee527222bf4d3a76a1"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b0ada370-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"15bfda56cd25ca54bddf01907c532ef4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0b7dca0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ddab6d6-23f3-4c89-ab8a-b2c9bbd4462c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.168177} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.173204,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0b7dca0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0b7dca0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0b7dca0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/6d535929-d25a-441c-9335-af9eec604a59/signaling 200 9ms","method":"POST","requestID":"b0b7dca0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0b9b160-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae702017-2571-4809-a867-007eb8651e04","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138829.1782744} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.357037,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b0b9b160-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0b9b160-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0b9b160-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling 200 9ms","method":"POST","requestID":"b0b9b160-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling"} device-1 | {"data":{"peerconnection":"0a157b8e-e6d2-4688-8447-31076c55b8c8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0a157b8e-e6d2-4688-8447-31076c55b8c8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ea9afd84e9b807c68fddd1b43fa75264","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ea9afd84e9b807c68fddd1b43fa75264","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8"}}},"level":"info","message":"received a callback","requestID":"ea9afd84e9b807c68fddd1b43fa75264"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"ea9afd84e9b807c68fddd1b43fa75264","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"ea9afd84e9b807c68fddd1b43fa75264"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59'"} device-1 | {"data":{"peerconnection":"0a157b8e-e6d2-4688-8447-31076c55b8c8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"0a157b8e-e6d2-4688-8447-31076c55b8c8","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0a157b8e-e6d2-4688-8447-31076c55b8c8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"becb495694653ddffb25397fd95b9cc1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"becb495694653ddffb25397fd95b9cc1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8"}}},"level":"info","message":"received a callback","requestID":"becb495694653ddffb25397fd95b9cc1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b1fbce50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0a157b8e-e6d2-4688-8447-31076c55b8c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25ca0fbb-57dd-4f6d-b1c9-5c5e01339901","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.2908692} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.118101,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b1fbce50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b1fbce50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b1fbce50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8 200 11ms","method":"GET","requestID":"b1fbce50-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"becb495694653ddffb25397fd95b9cc1","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"becb495694653ddffb25397fd95b9cc1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b1ff9ee0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb6b3c45-f44a-4405-a238-c700bc1d1716","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.3148532} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.131597,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b1ff9ee0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1ff9ee0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b1ff9ee0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling 200 8ms","method":"POST","requestID":"b1ff9ee0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b2014c90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe68b38d-a68a-4f00-aafb-e6f1390dda67","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.3258874} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.591082,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b2014c90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b2014c90-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b2014c90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/6d535929-d25a-441c-9335-af9eec604a59/signaling 200 8ms","method":"POST","requestID":"b2014c90-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o","level":"info","message":"auth send jwt","requestID":"f0257dc9c29cd7d073a35b9870ef3f0c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f0257dc9c29cd7d073a35b9870ef3f0c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","requestID":"f0257dc9c29cd7d073a35b9870ef3f0c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.1931,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f0257dc9c29cd7d073a35b9870ef3f0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138831,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f0257dc9c29cd7d073a35b9870ef3f0c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","requestID":"f0257dc9c29cd7d073a35b9870ef3f0c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0257dc9c29cd7d073a35b9870ef3f0c"} experiment-1 | {"level":"info","message":"GET /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d 200 16ms","method":"GET","requestID":"f0257dc9c29cd7d073a35b9870ef3f0c","responseTime":16,"status":200,"url":"/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o","level":"info","message":"auth send jwt","requestID":"c2e7ddf9ece933bc39611e6a1f74be91"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c2e7ddf9ece933bc39611e6a1f74be91","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","requestID":"c2e7ddf9ece933bc39611e6a1f74be91"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.226734,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c2e7ddf9ece933bc39611e6a1f74be91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138831,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c2e7ddf9ece933bc39611e6a1f74be91","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Attempting to finish experiment","requestID":"c2e7ddf9ece933bc39611e6a1f74be91"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b20ff290-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.234019,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b20ff290-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138831,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b20ff290-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0a157b8e-e6d2-4688-8447-31076c55b8c8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3d6b9400546744660da4ad23182893ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3d6b9400546744660da4ad23182893ce","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c64f9dcc46cfa73741e93fc91b734852","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8"}}},"level":"info","message":"received a callback","requestID":"3d6b9400546744660da4ad23182893ce"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0a157b8e-e6d2-4688-8447-31076c55b8c8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0a157b8e-e6d2-4688-8447-31076c55b8c8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"1522b0fd-ae28-4b8e-9496-38df84af7823","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.4480622} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c64f9dcc46cfa73741e93fc91b734852","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b042f9d8-a83d-46f6-b163-5bb9cec8cb18","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.448749} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8"}}},"level":"info","message":"received a callback","requestID":"c64f9dcc46cfa73741e93fc91b734852"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b20ff290-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"0a157b8e-e6d2-4688-8447-31076c55b8c8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b20ff290-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8 204 52ms","method":"DELETE","requestID":"b20ff290-437c-11ef-8659-f5877ab12720","responseTime":52,"status":204,"url":"/peerconnections/0a157b8e-e6d2-4688-8447-31076c55b8c8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"},"level":"info","message":"Successfully finished experiment","requestID":"c2e7ddf9ece933bc39611e6a1f74be91"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b21bb260-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026123a2-8e99-41af-9b86-b97b78a39957","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"09899907-c15d-4a7f-adad-03625ed9dae3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.5004227} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.385215,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b21bb260-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b21bb260-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b21bb260-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling 200 12ms","method":"POST","requestID":"b21bb260-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/026123a2-8e99-41af-9b86-b97b78a39957/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F68611db3-8ed6-4b13-a6c2-1e69bddcfe2d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"674d9658-bdfc-4707-ab50-a9ff9e6f4bc0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.5094042} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b21e2360-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a051093c-f737-4911-8d0e-85519e137ff0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.511584} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"c2e7ddf9ece933bc39611e6a1f74be91","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d535929-d25a-441c-9335-af9eec604a59","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"564eb255-330a-49ae-98a6-d82091e813f1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.5173638} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.887682,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b21e2360-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b21e2360-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b21e2360-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/6d535929-d25a-441c-9335-af9eec604a59/signaling 200 14ms","method":"POST","requestID":"b21e2360-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/6d535929-d25a-441c-9335-af9eec604a59/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d","requestID":"c2e7ddf9ece933bc39611e6a1f74be91"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c2e7ddf9ece933bc39611e6a1f74be91"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3229","request_time":"4.195","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cf71bf3bbb98f2f8f63bd51ce4f69fb1"} experiment-1 | {"level":"info","message":"DELETE /experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d 204 182ms","method":"DELETE","requestID":"c2e7ddf9ece933bc39611e6a1f74be91","responseTime":182,"status":204,"url":"/experiments/68611db3-8ed6-4b13-a6c2-1e69bddcfe2d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"3d6b9400546744660da4ad23182893ce","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"3d6b9400546744660da4ad23182893ce"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"c64f9dcc46cfa73741e93fc91b734852","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"c64f9dcc46cfa73741e93fc91b734852"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o","level":"info","message":"auth send jwt","requestID":"7377edaab8329f1a31e0351cf96e595a"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"7377edaab8329f1a31e0351cf96e595a","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7377edaab8329f1a31e0351cf96e595a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2742","request_time":"2.753","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dc7d68ec2a1572a4f31b477793ed7904"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.119873,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7377edaab8329f1a31e0351cf96e595a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138831,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7377edaab8329f1a31e0351cf96e595a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/026123a2-8e99-41af-9b86-b97b78a39957' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"082e6860-9fa4-48fc-b8ce-a63e7bc68060","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6189346} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7377edaab8329f1a31e0351cf96e595a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6d535929-d25a-441c-9335-af9eec604a59' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39455c49-4141-4d13-a291-ff19869159b8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6249104} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7377edaab8329f1a31e0351cf96e595a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"47bdb381-d779-4965-aecc-3d21fc787898","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.635626} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b32ff0f2-5824-49dd-b1c4-b6b56a95e0a0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.635899} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7377edaab8329f1a31e0351cf96e595a","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.635605498Z"}]},"request_id":"2378b152-c06b-4126-87ed-309498c54520","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6404145} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7377edaab8329f1a31e0351cf96e595a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7377edaab8329f1a31e0351cf96e595a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7377edaab8329f1a31e0351cf96e595a"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"7377edaab8329f1a31e0351cf96e595a","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o","level":"info","message":"auth send jwt","requestID":"118263ecbc848e1c04d0253e614de490"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"118263ecbc848e1c04d0253e614de490","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"118263ecbc848e1c04d0253e614de490"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.77461,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"118263ecbc848e1c04d0253e614de490","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138831,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMX0.dnFmSrSpA4OPGX7vwngJvHTyQS1KgNEYEIlTO3Zmg8o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"118263ecbc848e1c04d0253e614de490","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d2d8310a-08b9-423c-9272-e8be7cbe586c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6693816} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"118263ecbc848e1c04d0253e614de490","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4fb909c1-f645-41bd-8f9a-8338cc748a44","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6738381} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"118263ecbc848e1c04d0253e614de490","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"c8b60448-d355-4af3-9bab-de7d959aa2c2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6847441} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8833b018-9a0d-4755-9a5d-49e0457a1eb5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6848426} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"118263ecbc848e1c04d0253e614de490","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.684722555Z"}]},"request_id":"753b7b26-7c76-4633-a1b2-0fee26f49d82","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138831.6895614} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"118263ecbc848e1c04d0253e614de490","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"118263ecbc848e1c04d0253e614de490"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"118263ecbc848e1c04d0253e614de490","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"118263ecbc848e1c04d0253e614de490"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMn0.fXqfzMuqg1hEbb-FcafnJE-3bq_XOKVyLexk7MFUdbc","level":"info","message":"auth send jwt","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.620528,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5814e3fa5fd76087f0801dc53e6c7bd0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138832,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMn0.fXqfzMuqg1hEbb-FcafnJE-3bq_XOKVyLexk7MFUdbc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.684722555Z"}]},"request_id":"955fc0b1-9d0c-453c-b5f1-5cde2366db6c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138832.190794} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0eb00773-fecb-4f3e-ad3b-d6027e2376e4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138832.1979291} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.684722555Z"}]},"request_id":"5cf64510-aea9-4536-a242-ed6c35fc1d3e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138832.211929} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0"} device-1 | {"level":"info","message":"PATCH /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1 200 39ms","method":"PATCH","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0","responseTime":39,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1"} gateway-1 | {"time_local":"16/Jul/2024:14:07:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5814e3fa5fd76087f0801dc53e6c7bd0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMn0.fXqfzMuqg1hEbb-FcafnJE-3bq_XOKVyLexk7MFUdbc","level":"info","message":"auth send jwt","requestID":"06fca914eee056898d694db16d81d25b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"06fca914eee056898d694db16d81d25b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"06fca914eee056898d694db16d81d25b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227917,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"06fca914eee056898d694db16d81d25b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138832,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzMn0.fXqfzMuqg1hEbb-FcafnJE-3bq_XOKVyLexk7MFUdbc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"06fca914eee056898d694db16d81d25b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"06fca914eee056898d694db16d81d25b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"06fca914eee056898d694db16d81d25b"} device-1 | {"level":"info","message":"POST /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/websocket 200 21ms","method":"POST","requestID":"06fca914eee056898d694db16d81d25b","responseTime":21,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cd83dd4157d3156e842a4585314a9999","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cd83dd4157d3156e842a4585314a9999","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cd83dd4157d3156e842a4585314a9999"} device-1 | {"level":"info","message":"OPTIONS /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/websocket 200 1ms","method":"OPTIONS","requestID":"cd83dd4157d3156e842a4585314a9999","responseTime":1,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU","level":"info","message":"auth send jwt","requestID":"003d8c99e65e1414990cd2fb561cfe6a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"003d8c99e65e1414990cd2fb561cfe6a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"003d8c99e65e1414990cd2fb561cfe6a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159992,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"003d8c99e65e1414990cd2fb561cfe6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"003d8c99e65e1414990cd2fb561cfe6a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"003d8c99e65e1414990cd2fb561cfe6a"} device-1 | {"level":"info","message":"POST /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/websocket 200 24ms","method":"POST","requestID":"003d8c99e65e1414990cd2fb561cfe6a","responseTime":24,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"003d8c99e65e1414990cd2fb561cfe6a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU","level":"info","message":"auth send jwt","requestID":"838339f34d540d6d4e1a09e17d1a031b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"838339f34d540d6d4e1a09e17d1a031b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"838339f34d540d6d4e1a09e17d1a031b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173808,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"838339f34d540d6d4e1a09e17d1a031b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"838339f34d540d6d4e1a09e17d1a031b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.635605498Z"}]},"request_id":"7064d9b7-410a-4ed6-8b4b-570952e5af2a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.7552798} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"838339f34d540d6d4e1a09e17d1a031b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"838339f34d540d6d4e1a09e17d1a031b"} device-1 | {"level":"info","message":"GET /devices/393dcad2-5f80-4345-8319-82c3532d3bcb? 200 18ms","method":"GET","requestID":"838339f34d540d6d4e1a09e17d1a031b","responseTime":18,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/393dcad2-5f80-4345-8319-82c3532d3bcb? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"838339f34d540d6d4e1a09e17d1a031b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU","level":"info","message":"auth send jwt","requestID":"75fb8bd1e3847cd9366447ce104fba39"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"75fb8bd1e3847cd9366447ce104fba39","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"75fb8bd1e3847cd9366447ce104fba39"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.188313,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"75fb8bd1e3847cd9366447ce104fba39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75fb8bd1e3847cd9366447ce104fba39","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.684722555Z"}]},"request_id":"ca2e37a9-d32d-4c66-b2ea-742f6717d3d9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.7799852} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"75fb8bd1e3847cd9366447ce104fba39","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"75fb8bd1e3847cd9366447ce104fba39"} gateway-1 | {"time_local":"16/Jul/2024:14:07:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"75fb8bd1e3847cd9366447ce104fba39"} device-1 | {"level":"info","message":"GET /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1? 200 18ms","method":"GET","requestID":"75fb8bd1e3847cd9366447ce104fba39","responseTime":18,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU","level":"info","message":"auth send jwt","requestID":"20942011a9daabb2dec408691c423e6a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"20942011a9daabb2dec408691c423e6a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"20942011a9daabb2dec408691c423e6a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.220481,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"20942011a9daabb2dec408691c423e6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20942011a9daabb2dec408691c423e6a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Attempting to run experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Attempting to book experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully booked experiment","requestID":"20942011a9daabb2dec408691c423e6a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b380e7b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b38135d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.805279,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b380e7b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b380e7b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.865246,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b38135d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b38135d0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.635605498Z"}]},"request_id":"6d25b627-6fc0-4511-a1c1-c093187cfbdd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.8480763} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b380e7b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.684722555Z"}]},"request_id":"379096a8-a400-4b91-b552-46676fa459af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.8539565} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b380e7b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b38135d0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/393dcad2-5f80-4345-8319-82c3532d3bcb? 200 20ms","method":"GET","requestID":"b380e7b0-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b38135d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1? 200 22ms","method":"GET","requestID":"b38135d0-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Setting up experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully set up experiment","requestID":"20942011a9daabb2dec408691c423e6a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b38c5960-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b38c8070-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b38cce90-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully running experiment","requestID":"20942011a9daabb2dec408691c423e6a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.994694,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b38c5960-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b38c5960-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662474,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b38c8070-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b38c8070-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43020","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.684722555Z"}]},"request_id":"f6fd7066-da70-43f7-9786-7de70616f426","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9224303} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a8cc949-71ff-43c3-b150-33837c335737","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.922532} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b38c8070-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43020","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.28333,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.635605498Z"}]},"request_id":"6dcc244e-82fe-4cf7-8419-cfcaa96ed040","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9231563} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b38cce90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b38cce90-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b38c5960-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b38c8070-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1? 200 16ms","method":"GET","requestID":"b38c8070-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b38cce90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling 200 18ms","method":"POST","requestID":"b38cce90-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b38c5960-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/393dcad2-5f80-4345-8319-82c3532d3bcb? 200 22ms","method":"GET","requestID":"b38c5960-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b38fdbd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b39029f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F958d48ce-6da4-4e0a-951d-edc7539a9c5c#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F958d48ce-6da4-4e0a-951d-edc7539a9c5c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"bb5bd983-7082-4a24-a77b-da2823b60116","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9352705} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b51db78b-7db3-4cee-830d-4b0c6cc62e24","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9354973} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"20942011a9daabb2dec408691c423e6a","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.805341,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66f8d64a-9166-4f96-8a63-3e3aeac85d74","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.938735} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b38fdbd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b38fdbd0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4b5f721-9736-4794-aacb-2bce722abea5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9422517} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.45485,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b39029f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b38fdbd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling 200 11ms","method":"POST","requestID":"b38fdbd0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b39029f0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"20942011a9daabb2dec408691c423e6a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"20942011a9daabb2dec408691c423e6a","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b39029f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling 200 11ms","method":"POST","requestID":"b39029f0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU","level":"info","message":"auth send jwt","requestID":"53e2806e764ff45249ba25992d5c24aa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b39225c0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"53e2806e764ff45249ba25992d5c24aa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53e2806e764ff45249ba25992d5c24aa"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:43018","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.754635,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"53e2806e764ff45249ba25992d5c24aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53e2806e764ff45249ba25992d5c24aa","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"874d3c37-76d3-4160-bb0d-e4e1a369d58e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9533558} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.598948,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b39225c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b39225c0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.635605498Z"}]},"request_id":"97d3cddd-89ad-40c1-8dfd-82803a8de103","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9572535} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"53e2806e764ff45249ba25992d5c24aa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b39225c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling 200 11ms","method":"POST","requestID":"b39225c0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Building connection plan","requestID":"20942011a9daabb2dec408691c423e6a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53e2806e764ff45249ba25992d5c24aa"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"a9d9a14f-34ae-4754-bcc8-e4f945b39b6c"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"eb390b58-c0eb-4273-8a44-fff6c187be0f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"40e63230-d38f-4c74-a75e-6d033d42a3ad"}]},"level":"info","message":"Built pairwise service configurations","requestID":"20942011a9daabb2dec408691c423e6a"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"20942011a9daabb2dec408691c423e6a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/393dcad2-5f80-4345-8319-82c3532d3bcb? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53e2806e764ff45249ba25992d5c24aa"} device-1 | {"level":"info","message":"GET /devices/393dcad2-5f80-4345-8319-82c3532d3bcb? 200 11ms","method":"GET","requestID":"53e2806e764ff45249ba25992d5c24aa","responseTime":11,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b39448a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU","level":"info","message":"auth send jwt","requestID":"3cc774cfbf885616264567d970819d6e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.719998,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3cc774cfbf885616264567d970819d6e","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b39448a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3cc774cfbf885616264567d970819d6e"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b39448a0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881182,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3cc774cfbf885616264567d970819d6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138833,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzM30.KMgwei2hhRRaiyuVxg0oeqH-mHQhXRmDw53dUcAxpDU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3cc774cfbf885616264567d970819d6e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"02510ef7-fa22-4121-8db4-9dbeea8bd99d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9738386} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb63942e-6cfc-4edb-a6dc-da982485f9d9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9741714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:11.684722555Z"}]},"request_id":"6c724be0-65bb-474d-96e4-4b7c3cd2d697","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138833.9750798} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b39448a0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3cc774cfbf885616264567d970819d6e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3cc774cfbf885616264567d970819d6e"} gateway-1 | {"time_local":"16/Jul/2024:14:07:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3cc774cfbf885616264567d970819d6e"} device-1 | {"level":"info","message":"GET /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1? 200 14ms","method":"GET","requestID":"3cc774cfbf885616264567d970819d6e","responseTime":14,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b39448a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b39448a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a'","requestID":"b39448a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a'","requestID":"b39448a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b39448a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 33ms","method":"POST","requestID":"b39448a0-437c-11ef-8659-f5877ab12720","responseTime":33,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b39448a0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"20942011a9daabb2dec408691c423e6a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b39dbe80-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe204d47-c6a1-4f13-bdcc-6996bf0917af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138834.0294585} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.406803,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b39dbe80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b39dbe80-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b39dbe80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling 200 11ms","method":"POST","requestID":"b39dbe80-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b39fe160-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca3cd285-9478-4f66-b74e-7adb66e0c396","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138834.0425086} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.983613,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b39fe160-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b39fe160-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b39fe160-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling 200 8ms","method":"POST","requestID":"b39fe160-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling"} device-1 | {"data":{"peerconnection":"6ed4f717-fee0-4090-b73c-ae4d2d1d576a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ed4f717-fee0-4090-b73c-ae4d2d1d576a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f4e01107183bb9074b34ca0d286cc40e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f4e01107183bb9074b34ca0d286cc40e","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a"}}},"level":"info","message":"received a callback","requestID":"f4e01107183bb9074b34ca0d286cc40e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"f4e01107183bb9074b34ca0d286cc40e","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"f4e01107183bb9074b34ca0d286cc40e"} device-1 | {"data":{"peerconnection":"6ed4f717-fee0-4090-b73c-ae4d2d1d576a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"6ed4f717-fee0-4090-b73c-ae4d2d1d576a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ed4f717-fee0-4090-b73c-ae4d2d1d576a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"22d24c4c203568dbd49e248413637046","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"22d24c4c203568dbd49e248413637046","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a"}}},"level":"info","message":"received a callback","requestID":"22d24c4c203568dbd49e248413637046"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b4e90330-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ed4f717-fee0-4090-b73c-ae4d2d1d576a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7787d416-bd04-48c7-b8a4-188c990124b8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.201529} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.809693,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b4e90330-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b4e90330-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b4e90330-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a 200 12ms","method":"GET","requestID":"b4e90330-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"22d24c4c203568dbd49e248413637046","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"22d24c4c203568dbd49e248413637046"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b4ee0c40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"757fd332-5ef1-4074-812b-ecb1ac005016","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.2364874} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.987626,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b4ee0c40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b4ee0c40-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b4ee0c40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling 200 15ms","method":"POST","requestID":"b4ee0c40-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b4f0cb60-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"481cdb3d-c65d-4206-ac7e-1c5341fb69ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.2537918} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.886948,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b4f0cb60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b4f0cb60-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b4f0cb60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling 200 14ms","method":"POST","requestID":"b4f0cb60-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y","level":"info","message":"auth send jwt","requestID":"5e4fa82e5af28fa786bfea18b863060d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5e4fa82e5af28fa786bfea18b863060d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","requestID":"5e4fa82e5af28fa786bfea18b863060d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.654897,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5e4fa82e5af28fa786bfea18b863060d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138836,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e4fa82e5af28fa786bfea18b863060d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","requestID":"5e4fa82e5af28fa786bfea18b863060d"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e4fa82e5af28fa786bfea18b863060d"} experiment-1 | {"level":"info","message":"GET /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c 200 18ms","method":"GET","requestID":"5e4fa82e5af28fa786bfea18b863060d","responseTime":18,"status":200,"url":"/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y","level":"info","message":"auth send jwt","requestID":"c7600a722423d54b9aad3bd1e4e0863b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c7600a722423d54b9aad3bd1e4e0863b","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","requestID":"c7600a722423d54b9aad3bd1e4e0863b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.424871,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c7600a722423d54b9aad3bd1e4e0863b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138836,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7600a722423d54b9aad3bd1e4e0863b","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Attempting to finish experiment","requestID":"c7600a722423d54b9aad3bd1e4e0863b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b4fdc3b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.149495,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b4fdc3b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138836,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b4fdc3b0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6ed4f717-fee0-4090-b73c-ae4d2d1d576a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ed4f717-fee0-4090-b73c-ae4d2d1d576a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6ed4f717-fee0-4090-b73c-ae4d2d1d576a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"dea6e93b-38df-42fb-b2db-f4882ec2d14d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.3569093} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70ca18de0826c799475a23d6665c8ec7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2396c1e7-0fcf-4332-aee7-d05c6e658c71","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.3576057} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"70ca18de0826c799475a23d6665c8ec7","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b4fdc3b0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92af186fea09e7edca8710d645f38c16","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a"}}},"level":"info","message":"received a callback","requestID":"70ca18de0826c799475a23d6665c8ec7"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"92af186fea09e7edca8710d645f38c16","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a"}}},"level":"info","message":"received a callback","requestID":"92af186fea09e7edca8710d645f38c16"} device-1 | {"data":{"peerconnection":"6ed4f717-fee0-4090-b73c-ae4d2d1d576a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b4fdc3b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a 204 50ms","method":"DELETE","requestID":"b4fdc3b0-437c-11ef-8659-f5877ab12720","responseTime":50,"status":204,"url":"/peerconnections/6ed4f717-fee0-4090-b73c-ae4d2d1d576a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"},"level":"info","message":"Successfully finished experiment","requestID":"c7600a722423d54b9aad3bd1e4e0863b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b5090e50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F393dcad2-5f80-4345-8319-82c3532d3bcb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fdd7c65-4036-4a95-9ebd-710a0eaa325c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.413369} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.536728,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b5090e50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b5090e50-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b5090e50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling 200 14ms","method":"POST","requestID":"b5090e50-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/393dcad2-5f80-4345-8319-82c3532d3bcb/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F958d48ce-6da4-4e0a-951d-edc7539a9c5c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F958d48ce-6da4-4e0a-951d-edc7539a9c5c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"755522ec-2360-4dad-a369-5e5f2fd1c951","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.4210455} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5ff84cf-528c-4b68-a579-7b805375b56d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.4213774} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b50ba660-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"c7600a722423d54b9aad3bd1e4e0863b","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fd42023-b76f-4a81-a87a-da4ba44a15f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4b0de11-f661-4fca-9432-d8afba441e38","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.4295528} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.435376,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b50ba660-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"b50ba660-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b50ba660-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling 200 12ms","method":"POST","requestID":"b50ba660-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c","requestID":"c7600a722423d54b9aad3bd1e4e0863b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.227","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c7600a722423d54b9aad3bd1e4e0863b"} experiment-1 | {"level":"info","message":"DELETE /experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c 204 221ms","method":"DELETE","requestID":"c7600a722423d54b9aad3bd1e4e0863b","responseTime":221,"status":204,"url":"/experiments/958d48ce-6da4-4e0a-951d-edc7539a9c5c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2837","request_time":"4.291","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"661bcb059898901a98d9c61029effa10"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 176ms","method":"POST","requestID":"70ca18de0826c799475a23d6665c8ec7","responseTime":176,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch","requestID":"70ca18de0826c799475a23d6665c8ec7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 175ms","method":"POST","requestID":"92af186fea09e7edca8710d645f38c16","responseTime":175,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch","requestID":"92af186fea09e7edca8710d645f38c16"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y","level":"info","message":"auth send jwt","requestID":"f18c709e8eb36599a58dcef05212845c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f18c709e8eb36599a58dcef05212845c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f18c709e8eb36599a58dcef05212845c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.827","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8345629a889ebc681f37ecc96e0f9342"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.975599,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f18c709e8eb36599a58dcef05212845c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138836,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f18c709e8eb36599a58dcef05212845c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2fd42023-b76f-4a81-a87a-da4ba44a15f1' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ff4706b1-8949-48c5-b111-64534a5de3af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.5616052} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f18c709e8eb36599a58dcef05212845c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/393dcad2-5f80-4345-8319-82c3532d3bcb' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86b94fe1-efaf-4e82-98f2-bffc4db1fb61","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.5663311} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f18c709e8eb36599a58dcef05212845c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"f4e3a473-9d86-4fbc-bdf8-89a133122b57","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.5812542} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e48b1d97-3270-424a-91a7-489ab40c9aca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.5812542} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f18c709e8eb36599a58dcef05212845c","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.581222610Z"}]},"request_id":"7cbff2ac-2ed4-4ee2-bd83-1fca971eb9b8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.5856383} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f18c709e8eb36599a58dcef05212845c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f18c709e8eb36599a58dcef05212845c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f18c709e8eb36599a58dcef05212845c"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"f18c709e8eb36599a58dcef05212845c","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y","level":"info","message":"auth send jwt","requestID":"b08fb78cfad0508a555089687ced796e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b08fb78cfad0508a555089687ced796e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b08fb78cfad0508a555089687ced796e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.00375,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b08fb78cfad0508a555089687ced796e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138836,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzNn0.EzEcXcIDd4rD96iTmtBwZvPvLU1AntSaHWzvbbiFg2Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b08fb78cfad0508a555089687ced796e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e76ce496-dfdf-4b99-ac50-31f4d9a8a6da","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.6105883} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b08fb78cfad0508a555089687ced796e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9690affa-c360-4931-895a-d1f79a607182","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.6159031} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b08fb78cfad0508a555089687ced796e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a4053275-0c78-4028-8d84-bd9bb297333f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.6250024} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cb90682-8a87-47dc-a063-f9fef1ed20f8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.6252046} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b08fb78cfad0508a555089687ced796e","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.624980570Z"}]},"request_id":"cb3c19cc-1fdf-4b44-bea6-3fa1dd433859","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138836.629366} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b08fb78cfad0508a555089687ced796e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b08fb78cfad0508a555089687ced796e"} gateway-1 | {"time_local":"16/Jul/2024:14:07:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b08fb78cfad0508a555089687ced796e"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"b08fb78cfad0508a555089687ced796e","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzN30.IPy0E9NUaIumByD2ilH6m41NM0-2VR_tREm_XPaKyos","level":"info","message":"auth send jwt","requestID":"ea6891abe771660dbde03d04259e6720"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ea6891abe771660dbde03d04259e6720","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ea6891abe771660dbde03d04259e6720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288967,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ea6891abe771660dbde03d04259e6720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138837,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzN30.IPy0E9NUaIumByD2ilH6m41NM0-2VR_tREm_XPaKyos"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ea6891abe771660dbde03d04259e6720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.581222610Z"}]},"request_id":"21362af4-349a-4128-8698-36974778b2fe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138837.126356} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ea6891abe771660dbde03d04259e6720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa6f0d13-6e4e-405f-acc1-1cf00ac84492","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138837.13336} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ea6891abe771660dbde03d04259e6720","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.581222610Z"}]},"request_id":"8194f4d6-9afc-42aa-b8a2-f434df9d293a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138837.1465807} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ea6891abe771660dbde03d04259e6720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ea6891abe771660dbde03d04259e6720"} device-1 | {"level":"info","message":"PATCH /devices/cbb48551-5422-4e33-8010-274d9d34d3ce 200 37ms","method":"PATCH","requestID":"ea6891abe771660dbde03d04259e6720","responseTime":37,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce"} gateway-1 | {"time_local":"16/Jul/2024:14:07:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/cbb48551-5422-4e33-8010-274d9d34d3ce HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ea6891abe771660dbde03d04259e6720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzN30.IPy0E9NUaIumByD2ilH6m41NM0-2VR_tREm_XPaKyos","level":"info","message":"auth send jwt","requestID":"88216250fad70a396cb681a840e44e46"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88216250fad70a396cb681a840e44e46","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"88216250fad70a396cb681a840e44e46"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211727,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"88216250fad70a396cb681a840e44e46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138837,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzN30.IPy0E9NUaIumByD2ilH6m41NM0-2VR_tREm_XPaKyos"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88216250fad70a396cb681a840e44e46","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"88216250fad70a396cb681a840e44e46"} device-1 | {"level":"info","message":"POST /devices/cbb48551-5422-4e33-8010-274d9d34d3ce/websocket 200 20ms","method":"POST","requestID":"88216250fad70a396cb681a840e44e46","responseTime":20,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/cbb48551-5422-4e33-8010-274d9d34d3ce/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"88216250fad70a396cb681a840e44e46"} device-1 | {"level":"info","message":"device 'http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bcb79146c00806bf4ba9a39c03eafe1e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bcb79146c00806bf4ba9a39c03eafe1e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3495f0b3-9891-48fe-9816-707022120ed9/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bcb79146c00806bf4ba9a39c03eafe1e"} device-1 | {"level":"info","message":"OPTIONS /devices/3495f0b3-9891-48fe-9816-707022120ed9/websocket 200 1ms","method":"OPTIONS","requestID":"bcb79146c00806bf4ba9a39c03eafe1e","responseTime":1,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8","level":"info","message":"auth send jwt","requestID":"e661a1a58cb74cbfe81fe26f98416ade"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e661a1a58cb74cbfe81fe26f98416ade","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e661a1a58cb74cbfe81fe26f98416ade"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.395304,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e661a1a58cb74cbfe81fe26f98416ade","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e661a1a58cb74cbfe81fe26f98416ade","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e661a1a58cb74cbfe81fe26f98416ade"} gateway-1 | {"time_local":"16/Jul/2024:14:07:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3495f0b3-9891-48fe-9816-707022120ed9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e661a1a58cb74cbfe81fe26f98416ade"} device-1 | {"level":"info","message":"POST /devices/3495f0b3-9891-48fe-9816-707022120ed9/websocket 200 24ms","method":"POST","requestID":"e661a1a58cb74cbfe81fe26f98416ade","responseTime":24,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8","level":"info","message":"auth send jwt","requestID":"118097b0250b60263ebf2f69c5789621"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"118097b0250b60263ebf2f69c5789621","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"118097b0250b60263ebf2f69c5789621"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179132,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"118097b0250b60263ebf2f69c5789621","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"118097b0250b60263ebf2f69c5789621","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.581222610Z"}]},"request_id":"f4bd14a0-460e-4836-8c59-ffb7a2fdb04a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.6880937} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"118097b0250b60263ebf2f69c5789621","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"118097b0250b60263ebf2f69c5789621"} gateway-1 | {"time_local":"16/Jul/2024:14:07:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cbb48551-5422-4e33-8010-274d9d34d3ce? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"118097b0250b60263ebf2f69c5789621"} device-1 | {"level":"info","message":"GET /devices/cbb48551-5422-4e33-8010-274d9d34d3ce? 200 18ms","method":"GET","requestID":"118097b0250b60263ebf2f69c5789621","responseTime":18,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8","level":"info","message":"auth send jwt","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.732089,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e61ff4da9606b9c19ca4c6e3da9f132e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.624980570Z"}]},"request_id":"7d9cb7cf-81ac-44ca-829b-db10c0d4714a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.7164166} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e"} device-1 | {"level":"info","message":"GET /devices/3495f0b3-9891-48fe-9816-707022120ed9? 200 21ms","method":"GET","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e","responseTime":21,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3495f0b3-9891-48fe-9816-707022120ed9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e61ff4da9606b9c19ca4c6e3da9f132e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8","level":"info","message":"auth send jwt","requestID":"b798c27516765b38e94fd6d00b04e09e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b798c27516765b38e94fd6d00b04e09e","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b798c27516765b38e94fd6d00b04e09e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.249907,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b798c27516765b38e94fd6d00b04e09e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b798c27516765b38e94fd6d00b04e09e","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Attempting to run experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Attempting to book experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully booked experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b67325a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b67373c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.182921,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b67325a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b67325a0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.925518,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b67373c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b67373c0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.581222610Z"}]},"request_id":"e310e731-d9be-49ff-944b-9f121fd99fda","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.7927427} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"b67325a0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.624980570Z"}]},"request_id":"ee49d3e7-2a8b-4ef3-bd92-51df0482c8b2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.800096} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b67325a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b67373c0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/cbb48551-5422-4e33-8010-274d9d34d3ce? 200 24ms","method":"GET","requestID":"b67325a0-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b67373c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/3495f0b3-9891-48fe-9816-707022120ed9? 200 27ms","method":"GET","requestID":"b67373c0-437c-11ef-8659-f5877ab12720","responseTime":27,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Setting up experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully set up experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b67e9750-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b67ebe60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b67f0c80-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully running experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878088,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b67e9750-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b67e9750-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868352,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b67ebe60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b67ebe60-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43042","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.581222610Z"}]},"request_id":"276ef506-4d6a-4359-8489-316a64dea0eb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.866244} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35f7361f-c999-49ba-89dd-277c34698575","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.8666852} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b67e9750-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.624980570Z"}]},"request_id":"f7129bf0-7a46-4e23-8e06-7d577bf789c2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.8672087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b67ebe60-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43042","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.1955,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b67f0c80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b67f0c80-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b67e9750-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/cbb48551-5422-4e33-8010-274d9d34d3ce? 200 21ms","method":"GET","requestID":"b67e9750-437c-11ef-8659-f5877ab12720","responseTime":21,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b67ebe60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/3495f0b3-9891-48fe-9816-707022120ed9? 200 20ms","method":"GET","requestID":"b67ebe60-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b67f0c80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling 200 19ms","method":"POST","requestID":"b67f0c80-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e1599c1-8894-4ac6-acf8-1117d71f91b1#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e1599c1-8894-4ac6-acf8-1117d71f91b1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"2b15b0c2-01cc-4a39-8b75-1b1d78cdefe3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.8756144} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65a14e26-f058-4534-bfb5-3270969fa06c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.8758824} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"b798c27516765b38e94fd6d00b04e09e","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b68240d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b6828ef0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14505d53-2473-4f72-83a9-614b8031dd68","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.8827953} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.25956,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b798c27516765b38e94fd6d00b04e09e"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b68240d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b68240d0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"b798c27516765b38e94fd6d00b04e09e","responseTime":153,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b798c27516765b38e94fd6d00b04e09e"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b55d897-a872-4150-9f9d-06f70e3b8b0b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.8839982} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.733171,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b6828ef0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b6828ef0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b68240d0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8","level":"info","message":"auth send jwt","requestID":"7a73fb2b16168733814d6e5a06e22355"} device-1 | {"level":"info","message":"POST /devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling 200 12ms","method":"POST","requestID":"b68240d0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7a73fb2b16168733814d6e5a06e22355","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b6828ef0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling 200 11ms","method":"POST","requestID":"b6828ef0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a73fb2b16168733814d6e5a06e22355"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b6848ac0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.668721,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7a73fb2b16168733814d6e5a06e22355","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7a73fb2b16168733814d6e5a06e22355","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b314411-fd93-44e6-8905-e5e6b67a8d3e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.8977163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.581222610Z"}]},"request_id":"53ded278-2bf4-47a9-82f9-7406db4d7dc5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.898167} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a73fb2b16168733814d6e5a06e22355","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.419356,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b6848ac0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b6848ac0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a73fb2b16168733814d6e5a06e22355"} gateway-1 | {"time_local":"16/Jul/2024:14:07:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/cbb48551-5422-4e33-8010-274d9d34d3ce? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7a73fb2b16168733814d6e5a06e22355"} device-1 | {"level":"info","message":"GET /devices/cbb48551-5422-4e33-8010-274d9d34d3ce? 200 12ms","method":"GET","requestID":"7a73fb2b16168733814d6e5a06e22355","responseTime":12,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b6848ac0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling 200 11ms","method":"POST","requestID":"b6848ac0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Building connection plan","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"b61b24d0-e700-4f70-ae6c-a05fa7171121"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"905cd9fc-6afb-493e-b410-bf064db035cb"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"3b1b3155-181a-4c28-ab2d-753946a6f657"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b798c27516765b38e94fd6d00b04e09e"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b798c27516765b38e94fd6d00b04e09e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b686ada0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8","level":"info","message":"auth send jwt","requestID":"ba67cf7fa316c033cc33cf4bafb94558"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ba67cf7fa316c033cc33cf4bafb94558","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba67cf7fa316c033cc33cf4bafb94558"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.763283,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b686ada0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b686ada0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654127,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ba67cf7fa316c033cc33cf4bafb94558","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138838,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODgzOH0.H1ZkvkjBdsgVcU0D0L8KCwZSUGrqt4cF2scoczNDra8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ba67cf7fa316c033cc33cf4bafb94558","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:16.624980570Z"}]},"request_id":"996be6cd-becc-41a3-9775-46ae654a2455","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.9155886} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ba67cf7fa316c033cc33cf4bafb94558","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba67cf7fa316c033cc33cf4bafb94558"} gateway-1 | {"time_local":"16/Jul/2024:14:07:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3495f0b3-9891-48fe-9816-707022120ed9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba67cf7fa316c033cc33cf4bafb94558"} device-1 | {"level":"info","message":"GET /devices/3495f0b3-9891-48fe-9816-707022120ed9? 200 10ms","method":"GET","requestID":"ba67cf7fa316c033cc33cf4bafb94558","responseTime":10,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"8e49d762-da79-4d76-a533-68647099cf86","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.9191833} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eaa58c22-d913-422a-bc0f-886a9283cb91","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.9193926} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b686ada0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b686ada0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b686ada0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215'","requestID":"b686ada0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215'","requestID":"b686ada0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b686ada0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"b686ada0-437c-11ef-8659-f5877ab12720","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b686ada0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b798c27516765b38e94fd6d00b04e09e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b68f1210-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e435fd4-4a02-4597-a696-830e30c2e0f9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.9659278} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.29441,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b68f1210-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b68f1210-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b68f1210-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling 200 8ms","method":"POST","requestID":"b68f1210-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b69098b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6aa77dd3-50e3-4f9c-b096-443bcb3df4f9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138838.976958} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.065883,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b69098b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b69098b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b69098b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling 200 11ms","method":"POST","requestID":"b69098b0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling"} device-1 | {"data":{"peerconnection":"81c535ec-8488-4539-95c4-9189b54fc215","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"81c535ec-8488-4539-95c4-9189b54fc215","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"863d2ac088319eb73f9fb2088b1b7961","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"863d2ac088319eb73f9fb2088b1b7961","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215"}}},"level":"info","message":"received a callback","requestID":"863d2ac088319eb73f9fb2088b1b7961"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"863d2ac088319eb73f9fb2088b1b7961","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"863d2ac088319eb73f9fb2088b1b7961"} device-1 | {"data":{"peerconnection":"81c535ec-8488-4539-95c4-9189b54fc215","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"81c535ec-8488-4539-95c4-9189b54fc215","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"81c535ec-8488-4539-95c4-9189b54fc215","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dc39148387178caed384f4abe00da16f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dc39148387178caed384f4abe00da16f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215"}}},"level":"info","message":"received a callback","requestID":"dc39148387178caed384f4abe00da16f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b7d99370-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F81c535ec-8488-4539-95c4-9189b54fc215","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03d39e7d-ad8c-4d1a-9480-07e7c0a2353f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.133718} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.592285,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b7d99370-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b7d99370-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b7d99370-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/81c535ec-8488-4539-95c4-9189b54fc215 200 12ms","method":"GET","requestID":"b7d99370-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"dc39148387178caed384f4abe00da16f","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch","requestID":"dc39148387178caed384f4abe00da16f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7df11b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26d9a981-4091-4107-a574-d1ecd71a29ae","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.1713526} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.911952,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b7df11b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"b7df11b0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7df11b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling 200 16ms","method":"POST","requestID":"b7df11b0-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7e1f7e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd96983c-99e2-4d0a-a577-e5102191b1a6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.188535} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.757675,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b7e1f7e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b7e1f7e0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7e1f7e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling 200 13ms","method":"POST","requestID":"b7e1f7e0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o","level":"info","message":"auth send jwt","requestID":"4c38c9050cb449ecd6881e638b0e696d"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"4c38c9050cb449ecd6881e638b0e696d","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","requestID":"4c38c9050cb449ecd6881e638b0e696d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.319234,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4c38c9050cb449ecd6881e638b0e696d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138841,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c38c9050cb449ecd6881e638b0e696d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","requestID":"4c38c9050cb449ecd6881e638b0e696d"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c38c9050cb449ecd6881e638b0e696d"} experiment-1 | {"level":"info","message":"GET /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1 200 17ms","method":"GET","requestID":"4c38c9050cb449ecd6881e638b0e696d","responseTime":17,"status":200,"url":"/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o","level":"info","message":"auth send jwt","requestID":"a72a294b526754b7d1598034cdadea0b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a72a294b526754b7d1598034cdadea0b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","requestID":"a72a294b526754b7d1598034cdadea0b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.329965,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a72a294b526754b7d1598034cdadea0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138841,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a72a294b526754b7d1598034cdadea0b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Attempting to finish experiment","requestID":"a72a294b526754b7d1598034cdadea0b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b7ee53f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.297266,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b7ee53f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138841,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7ee53f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"81c535ec-8488-4539-95c4-9189b54fc215","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F81c535ec-8488-4539-95c4-9189b54fc215': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F81c535ec-8488-4539-95c4-9189b54fc215","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"1cc852eb-6565-48e3-850f-567e8c96ead8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.2885258} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2dcb03cd1290b2b5f3082c0e6aab13f7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2dcb03cd1290b2b5f3082c0e6aab13f7","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be81144c-658e-4175-9d1b-21c05893d96e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.2892895} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b7ee53f0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ece761c757b74f64c590ccfa7f47a449","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215"}}},"level":"info","message":"received a callback","requestID":"2dcb03cd1290b2b5f3082c0e6aab13f7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ece761c757b74f64c590ccfa7f47a449","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215"}}},"level":"info","message":"received a callback","requestID":"ece761c757b74f64c590ccfa7f47a449"} device-1 | {"data":{"peerconnection":"81c535ec-8488-4539-95c4-9189b54fc215","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b7ee53f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/81c535ec-8488-4539-95c4-9189b54fc215 204 52ms","method":"DELETE","requestID":"b7ee53f0-437c-11ef-8659-f5877ab12720","responseTime":52,"status":204,"url":"/peerconnections/81c535ec-8488-4539-95c4-9189b54fc215"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"},"level":"info","message":"Successfully finished experiment","requestID":"a72a294b526754b7d1598034cdadea0b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7fa3ad0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3495f0b3-9891-48fe-9816-707022120ed9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16acd0a8-e596-4b9f-b9b5-9206f27731f0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.3484} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.073993,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b7fa3ad0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b7fa3ad0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7fa3ad0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling 200 15ms","method":"POST","requestID":"b7fa3ad0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/3495f0b3-9891-48fe-9816-707022120ed9/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e1599c1-8894-4ac6-acf8-1117d71f91b1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1e1599c1-8894-4ac6-acf8-1117d71f91b1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"5a8dc55d-9957-482b-985a-500cf3ff4685","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.3561845} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7de8ba12-b6fc-4456-b71a-8838cfa01e82","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.3563902} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a72a294b526754b7d1598034cdadea0b","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b7fd2100-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fcbb48551-5422-4e33-8010-274d9d34d3ce","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e334e992-551e-400c-8e3d-ccc16d9200bb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.3681564} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.832944,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b7fd2100-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"b7fd2100-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b7fd2100-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling 200 15ms","method":"POST","requestID":"b7fd2100-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/cbb48551-5422-4e33-8010-274d9d34d3ce/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1","requestID":"a72a294b526754b7d1598034cdadea0b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a72a294b526754b7d1598034cdadea0b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2839","request_time":"4.251","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f5dfd9fc1f2471a2e7a7e36a5449d00c"} experiment-1 | {"level":"info","message":"DELETE /experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1 204 184ms","method":"DELETE","requestID":"a72a294b526754b7d1598034cdadea0b","responseTime":184,"status":204,"url":"/experiments/1e1599c1-8894-4ac6-acf8-1117d71f91b1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"2dcb03cd1290b2b5f3082c0e6aab13f7","responseTime":142,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"ece761c757b74f64c590ccfa7f47a449","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"2dcb03cd1290b2b5f3082c0e6aab13f7"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"ece761c757b74f64c590ccfa7f47a449"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o","level":"info","message":"auth send jwt","requestID":"4e56204b80f6a761bc835a2c058fa09b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4e56204b80f6a761bc835a2c058fa09b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4e56204b80f6a761bc835a2c058fa09b"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/cbb48551-5422-4e33-8010-274d9d34d3ce' closed"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.793","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3e3c80812bce2aa071b333c52a26195a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.013763,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4e56204b80f6a761bc835a2c058fa09b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138841,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4e56204b80f6a761bc835a2c058fa09b","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3495f0b3-9891-48fe-9816-707022120ed9' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"09acc1bd-a662-4f19-a9bb-4176408ab5a1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.4650981} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e56204b80f6a761bc835a2c058fa09b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1bd1014b-6710-4bd2-ac88-6c665793b4e3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.47118} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4e56204b80f6a761bc835a2c058fa09b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"f6d01ef3-711b-437f-90f2-dfbc8bd21868","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.485695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1467d546-bae8-44e3-9fca-e3beb7dbcd4c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.4858267} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"4e56204b80f6a761bc835a2c058fa09b","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.485663991Z"}]},"request_id":"c8fe1de1-245f-4063-87f2-31e72fe4de9b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.4901848} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e56204b80f6a761bc835a2c058fa09b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4e56204b80f6a761bc835a2c058fa09b"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"4e56204b80f6a761bc835a2c058fa09b","responseTime":53,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e56204b80f6a761bc835a2c058fa09b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o","level":"info","message":"auth send jwt","requestID":"a9eb1c86575b667d99ee97a76b162d62"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a9eb1c86575b667d99ee97a76b162d62","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a9eb1c86575b667d99ee97a76b162d62"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.705718,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a9eb1c86575b667d99ee97a76b162d62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138841,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0MX0.Oo7U9_nWtcO-OHDk0SNL2_mYo4cbM_0rniVxWaxh24o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9eb1c86575b667d99ee97a76b162d62","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2d92949e-646a-47bc-a7fc-7022c69f0afa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.5149553} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a9eb1c86575b667d99ee97a76b162d62","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"253612cd-2aec-4ec4-a941-91d6abe2377a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.5196102} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a9eb1c86575b667d99ee97a76b162d62","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"3bdd208c-1e50-4ad6-8402-6c7438e91bd8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.5300758} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c32dd91a-4367-4074-a907-4e69cad7ebcb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.5303469} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a9eb1c86575b667d99ee97a76b162d62","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.530048771Z"}]},"request_id":"bb838e6b-7662-48b9-8475-0d861c41a921","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138841.5339115} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a9eb1c86575b667d99ee97a76b162d62","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a9eb1c86575b667d99ee97a76b162d62"} gateway-1 | {"time_local":"16/Jul/2024:14:07:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a9eb1c86575b667d99ee97a76b162d62"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"a9eb1c86575b667d99ee97a76b162d62","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Mn0.GaQb1oN07WgoeTmLe-zLC9mYm7XZsVNhykqIanXR02Y","level":"info","message":"auth send jwt","requestID":"8b251950398b811f5d825c8b8b58d9d9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8b251950398b811f5d825c8b8b58d9d9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8b251950398b811f5d825c8b8b58d9d9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.636937,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"8b251950398b811f5d825c8b8b58d9d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138842,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Mn0.GaQb1oN07WgoeTmLe-zLC9mYm7XZsVNhykqIanXR02Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8b251950398b811f5d825c8b8b58d9d9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.485663991Z"}]},"request_id":"00fcb449-859f-4840-9e41-4a078c2fff3d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138842.0228672} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8b251950398b811f5d825c8b8b58d9d9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4de60c83-d249-4603-bc54-7a00f101d79c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138842.0292456} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8b251950398b811f5d825c8b8b58d9d9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.485663991Z"}]},"request_id":"4c9c4039-6b24-4193-af10-0eabd6c3edfe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138842.0417705} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8b251950398b811f5d825c8b8b58d9d9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8b251950398b811f5d825c8b8b58d9d9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8b251950398b811f5d825c8b8b58d9d9"} device-1 | {"level":"info","message":"PATCH /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf 200 33ms","method":"PATCH","requestID":"8b251950398b811f5d825c8b8b58d9d9","responseTime":33,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Mn0.GaQb1oN07WgoeTmLe-zLC9mYm7XZsVNhykqIanXR02Y","level":"info","message":"auth send jwt","requestID":"4e86eaa8003c5e6cb938704512c21c07"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4e86eaa8003c5e6cb938704512c21c07","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4e86eaa8003c5e6cb938704512c21c07"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.243073,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4e86eaa8003c5e6cb938704512c21c07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138842,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Mn0.GaQb1oN07WgoeTmLe-zLC9mYm7XZsVNhykqIanXR02Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4e86eaa8003c5e6cb938704512c21c07","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4e86eaa8003c5e6cb938704512c21c07"} gateway-1 | {"time_local":"16/Jul/2024:14:07:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4e86eaa8003c5e6cb938704512c21c07"} device-1 | {"level":"info","message":"POST /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/websocket 200 19ms","method":"POST","requestID":"4e86eaa8003c5e6cb938704512c21c07","responseTime":19,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dc4d3d81e8478fe1cc65f68a2beab5ff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dc4d3d81e8478fe1cc65f68a2beab5ff","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dc4d3d81e8478fe1cc65f68a2beab5ff"} device-1 | {"level":"info","message":"OPTIONS /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/websocket 200 1ms","method":"OPTIONS","requestID":"dc4d3d81e8478fe1cc65f68a2beab5ff","responseTime":1,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk","level":"info","message":"auth send jwt","requestID":"339e3545aa8837d25d3cfd4b817cc6f6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"339e3545aa8837d25d3cfd4b817cc6f6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"339e3545aa8837d25d3cfd4b817cc6f6"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.446871,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"339e3545aa8837d25d3cfd4b817cc6f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"339e3545aa8837d25d3cfd4b817cc6f6","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"339e3545aa8837d25d3cfd4b817cc6f6"} device-1 | {"level":"info","message":"POST /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/websocket 200 23ms","method":"POST","requestID":"339e3545aa8837d25d3cfd4b817cc6f6","responseTime":23,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"339e3545aa8837d25d3cfd4b817cc6f6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk","level":"info","message":"auth send jwt","requestID":"7a25372760a186531a5087217841dfe0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7a25372760a186531a5087217841dfe0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a25372760a186531a5087217841dfe0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272555,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7a25372760a186531a5087217841dfe0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a25372760a186531a5087217841dfe0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.485663991Z"}]},"request_id":"1a65b39b-2bbb-445a-bde3-704979c2cac2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.6091185} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7a25372760a186531a5087217841dfe0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a25372760a186531a5087217841dfe0"} device-1 | {"level":"info","message":"GET /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf? 200 21ms","method":"GET","requestID":"7a25372760a186531a5087217841dfe0","responseTime":21,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7a25372760a186531a5087217841dfe0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk","level":"info","message":"auth send jwt","requestID":"39537df39498e015c92722c775264bb1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"39537df39498e015c92722c775264bb1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"39537df39498e015c92722c775264bb1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.343093,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"39537df39498e015c92722c775264bb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"39537df39498e015c92722c775264bb1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.530048771Z"}]},"request_id":"ebd4995c-1e7e-4e40-a950-e6fdaaf6f693","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.6384416} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"39537df39498e015c92722c775264bb1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"39537df39498e015c92722c775264bb1"} gateway-1 | {"time_local":"16/Jul/2024:14:07:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39537df39498e015c92722c775264bb1"} device-1 | {"level":"info","message":"GET /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29? 200 17ms","method":"GET","requestID":"39537df39498e015c92722c775264bb1","responseTime":17,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk","level":"info","message":"auth send jwt","requestID":"8fbf40da7013b316afa14da8970041af"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8fbf40da7013b316afa14da8970041af","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8fbf40da7013b316afa14da8970041af"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.279233,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"8fbf40da7013b316afa14da8970041af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8fbf40da7013b316afa14da8970041af","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Attempting to run experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Attempting to book experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully booked experiment","requestID":"8fbf40da7013b316afa14da8970041af"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9620830-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9625650-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.892003,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9620830-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b9620830-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.897762,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9625650-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b9625650-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.485663991Z"}]},"request_id":"500d52f7-a3a7-4e99-ab28-2658c20522a1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.7089725} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b9620830-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.530048771Z"}]},"request_id":"6461b1b4-9bcb-478c-91e6-d150ded5551e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.7101004} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b9625650-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9620830-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf? 200 18ms","method":"GET","requestID":"b9620830-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9625650-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29? 200 17ms","method":"GET","requestID":"b9625650-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Setting up experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully set up experiment","requestID":"8fbf40da7013b316afa14da8970041af"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b96cdda0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b96d2bc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b96d79e0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully running experiment","requestID":"8fbf40da7013b316afa14da8970041af"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932814,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b96cdda0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b96cdda0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.162225,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b96d2bc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b96d2bc0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38668","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.485663991Z"}]},"request_id":"3348f452-5dea-46a2-a9e8-3696f786fdb0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.7838802} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27da6df1-f756-4906-bab9-b4c021f4e9db","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.7841709} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b96cdda0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.530048771Z"}]},"request_id":"e8f6ef03-1211-4b85-8ee0-a1d9a513211d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.7852921} authorization-1 | {"client_addr":"127.0.0.1:38668","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.207561,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b96d79e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b96d79e0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b96d2bc0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b96cdda0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf? 200 22ms","method":"GET","requestID":"b96cdda0-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ee46ad6-650d-4286-b90c-2c7ea24421ec#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ee46ad6-650d-4286-b90c-2c7ea24421ec","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"6e79c92f-1381-456a-8ada-cbf4cc977390","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.793731} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b96d79e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f3fa81d-29e0-4b18-b6b3-159063441c4e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.794081} device-1 | {"level":"info","message":"POST /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling 200 20ms","method":"POST","requestID":"b96d79e0-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b96d2bc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29? 200 24ms","method":"GET","requestID":"b96d2bc0-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"8fbf40da7013b316afa14da8970041af","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b9712360-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b9714a70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd30024d-9370-4273-b30b-d0fae925fed6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.804852} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.881278,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9712360-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b9712360-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cc6a9d4-cb62-41f4-a050-f648ea093228","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.8067818} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8fbf40da7013b316afa14da8970041af"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.620523,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} gateway-1 | {"time_local":"16/Jul/2024:14:07:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8fbf40da7013b316afa14da8970041af"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9714a70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 154ms","method":"POST","requestID":"8fbf40da7013b316afa14da8970041af","responseTime":154,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b9714a70-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b9712360-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling 200 16ms","method":"POST","requestID":"b9712360-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b9714a70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling 200 16ms","method":"POST","requestID":"b9714a70-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk","level":"info","message":"auth send jwt","requestID":"b9317617a4b3fe3dc6294749394b25f4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b9317617a4b3fe3dc6294749394b25f4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9317617a4b3fe3dc6294749394b25f4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b97457b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.840493,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9317617a4b3fe3dc6294749394b25f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b9317617a4b3fe3dc6294749394b25f4","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7bdd2126-7b72-4ada-8ba7-168e6c1916d0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.825004} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.800029,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b97457b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"b97457b0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.485663991Z"}]},"request_id":"7d71ac42-8eb6-49d7-897b-3405f0116253","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.8310604} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b9317617a4b3fe3dc6294749394b25f4","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b97457b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling 200 18ms","method":"POST","requestID":"b97457b0-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9317617a4b3fe3dc6294749394b25f4"} gateway-1 | {"time_local":"16/Jul/2024:14:07:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b9317617a4b3fe3dc6294749394b25f4"} device-1 | {"level":"info","message":"GET /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf? 200 21ms","method":"GET","requestID":"b9317617a4b3fe3dc6294749394b25f4","responseTime":21,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Building connection plan","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"a3bb52b6-076e-40b4-a96a-7d31a6ef956e"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"f01be900-62cb-499c-93f8-3a98f884dbaa"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c9fccc4f-fc38-43ab-a419-ba66a6127a67"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8fbf40da7013b316afa14da8970041af"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8fbf40da7013b316afa14da8970041af"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b9778c00-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk","level":"info","message":"auth send jwt","requestID":"ff14c957aa637b6cdc98bd795e756735"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ff14c957aa637b6cdc98bd795e756735","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.994815,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ff14c957aa637b6cdc98bd795e756735"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9778c00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b9778c00-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8309,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ff14c957aa637b6cdc98bd795e756735","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138843,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0M30.22hcv3a6uvZhp-7pHtwuV69MWMlIi07qt6FQDkEpBIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff14c957aa637b6cdc98bd795e756735","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:21.530048771Z"}]},"request_id":"fd5ef31e-71c4-43b6-86b2-732f94bb4b39","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.8556175} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff14c957aa637b6cdc98bd795e756735","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ff14c957aa637b6cdc98bd795e756735"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a794f80a-ebcc-472c-8d25-8a9eef48a696","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.8604047} device-1 | {"level":"info","message":"GET /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29? 200 17ms","method":"GET","requestID":"ff14c957aa637b6cdc98bd795e756735","responseTime":17,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f20fb3ff-48d7-4a99-8d97-8ce2188d194f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.8608499} gateway-1 | {"time_local":"16/Jul/2024:14:07:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff14c957aa637b6cdc98bd795e756735"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"b9778c00-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b9778c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b9778c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6'","requestID":"b9778c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6'","requestID":"b9778c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b9778c00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"b9778c00-437c-11ef-8659-f5877ab12720","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"b9778c00-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8fbf40da7013b316afa14da8970041af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b9815000-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa3ae25b-3723-4b86-aab5-7dab24e9baa2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.9084601} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.339364,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b9815000-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b9815000-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b9815000-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling 200 9ms","method":"POST","requestID":"b9815000-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b982fdb0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a0b177b-dccc-47fd-97c5-d6305578e748","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138843.9205365} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.178279,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b982fdb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b982fdb0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b982fdb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling 200 10ms","method":"POST","requestID":"b982fdb0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling"} device-1 | {"data":{"peerconnection":"77824a66-eba5-4d4b-b9eb-08d01f6798f6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77824a66-eba5-4d4b-b9eb-08d01f6798f6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df3cbfcd8203a4876134093e4871eebf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"df3cbfcd8203a4876134093e4871eebf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6"}}},"level":"info","message":"received a callback","requestID":"df3cbfcd8203a4876134093e4871eebf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"df3cbfcd8203a4876134093e4871eebf","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"df3cbfcd8203a4876134093e4871eebf"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29'"} device-1 | {"data":{"peerconnection":"77824a66-eba5-4d4b-b9eb-08d01f6798f6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"77824a66-eba5-4d4b-b9eb-08d01f6798f6","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77824a66-eba5-4d4b-b9eb-08d01f6798f6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4feeb0d51b358ee9bdee43844bfb4588","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4feeb0d51b358ee9bdee43844bfb4588","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6"}}},"level":"info","message":"received a callback","requestID":"4feeb0d51b358ee9bdee43844bfb4588"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bac89d10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77824a66-eba5-4d4b-b9eb-08d01f6798f6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7e7e4fd-8c42-4661-974b-549719a7126f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.056533} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.067305,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bac89d10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bac89d10-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bac89d10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6 200 14ms","method":"GET","requestID":"bac89d10-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"4feeb0d51b358ee9bdee43844bfb4588","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch","requestID":"4feeb0d51b358ee9bdee43844bfb4588"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bace1b50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7e4bfa3f-5ea5-4849-8ab3-51f3014c42ef","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.0914626} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.53096,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bace1b50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bace1b50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bace1b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling 200 13ms","method":"POST","requestID":"bace1b50-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bad08c50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1230ddc-1380-488a-b761-02c9ea338e39","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.109297} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.344075,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bad08c50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bad08c50-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bad08c50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling 200 15ms","method":"POST","requestID":"bad08c50-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"d3ef53f78cdf1faf6dd097f0cb25882c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d3ef53f78cdf1faf6dd097f0cb25882c","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","requestID":"d3ef53f78cdf1faf6dd097f0cb25882c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.243537,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d3ef53f78cdf1faf6dd097f0cb25882c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3ef53f78cdf1faf6dd097f0cb25882c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","requestID":"d3ef53f78cdf1faf6dd097f0cb25882c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d3ef53f78cdf1faf6dd097f0cb25882c"} experiment-1 | {"level":"info","message":"GET /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec 200 16ms","method":"GET","requestID":"d3ef53f78cdf1faf6dd097f0cb25882c","responseTime":16,"status":200,"url":"/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"7715f00661aa29a26d626aee7bebe33b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"7715f00661aa29a26d626aee7bebe33b","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","requestID":"7715f00661aa29a26d626aee7bebe33b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.959062,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7715f00661aa29a26d626aee7bebe33b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7715f00661aa29a26d626aee7bebe33b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Attempting to finish experiment","requestID":"7715f00661aa29a26d626aee7bebe33b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"badce860-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.25245,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"badce860-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"badce860-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77824a66-eba5-4d4b-b9eb-08d01f6798f6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77824a66-eba5-4d4b-b9eb-08d01f6798f6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77824a66-eba5-4d4b-b9eb-08d01f6798f6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"91aebc43-acdd-4059-a944-d2965a6f6b32","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.2061834} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4399d52ddcf741391b53317f09bc181a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4399d52ddcf741391b53317f09bc181a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b09773e1-196e-4d71-90a9-2441dc878edf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.2067645} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e06365ba68bf342643e91158bccc0422","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e06365ba68bf342643e91158bccc0422","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"badce860-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6"}}},"level":"info","message":"received a callback","requestID":"4399d52ddcf741391b53317f09bc181a"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6"}}},"level":"info","message":"received a callback","requestID":"e06365ba68bf342643e91158bccc0422"} device-1 | {"data":{"peerconnection":"77824a66-eba5-4d4b-b9eb-08d01f6798f6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"badce860-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6 204 48ms","method":"DELETE","requestID":"badce860-437c-11ef-8659-f5877ab12720","responseTime":48,"status":204,"url":"/peerconnections/77824a66-eba5-4d4b-b9eb-08d01f6798f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"},"level":"info","message":"Successfully finished experiment","requestID":"7715f00661aa29a26d626aee7bebe33b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bae7e4e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca409156-2cd7-4cd8-b595-8ac7154e2caf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4eb78f13-7ac4-49b2-b6a0-b333f05b9b1a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.261084} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.838534,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bae7e4e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"bae7e4e0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bae7e4e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling 200 14ms","method":"POST","requestID":"bae7e4e0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ee46ad6-650d-4286-b90c-2c7ea24421ec': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ee46ad6-650d-4286-b90c-2c7ea24421ec","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"450a4fca-1904-41fe-a485-f2cec8601c70","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.2691512} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d580e93-bc7c-433c-b671-fadf362468a8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.2697976} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"baea7cf0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"7715f00661aa29a26d626aee7bebe33b","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb92f2243-3ef9-45d4-83cc-200ac21f2f29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"158abfca-8ead-4671-958c-7689f71295e5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.2786174} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.768716,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"baea7cf0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"baea7cf0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"baea7cf0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling 200 14ms","method":"POST","requestID":"baea7cf0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec","requestID":"7715f00661aa29a26d626aee7bebe33b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7715f00661aa29a26d626aee7bebe33b"} experiment-1 | {"level":"info","message":"DELETE /experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec 204 171ms","method":"DELETE","requestID":"7715f00661aa29a26d626aee7bebe33b","responseTime":171,"status":204,"url":"/experiments/7ee46ad6-650d-4286-b90c-2c7ea24421ec"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3230","request_time":"4.268","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"c230bfb2b8b2d9e2b8e15e5b2c1c0081"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"4399d52ddcf741391b53317f09bc181a","responseTime":134,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"7e6dab7da38ac765c6821322fa31720d"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"4399d52ddcf741391b53317f09bc181a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7e6dab7da38ac765c6821322fa31720d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"e06365ba68bf342643e91158bccc0422","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"e06365ba68bf342643e91158bccc0422"} device-1 | {"level":"info","message":"postDevices called","requestID":"7e6dab7da38ac765c6821322fa31720d"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2740","request_time":"2.776","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e133f689edf07cfb86dea6eb44041340"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ca409156-2cd7-4cd8-b595-8ac7154e2caf' closed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.879638,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7e6dab7da38ac765c6821322fa31720d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7e6dab7da38ac765c6821322fa31720d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b92f2243-3ef9-45d4-83cc-200ac21f2f29' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a78ad55f-5b3d-4f7c-8881-1f3594b79eb7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.3737657} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7e6dab7da38ac765c6821322fa31720d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"763043ff-f20c-4425-a1b9-11ed712042c8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.3794212} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7e6dab7da38ac765c6821322fa31720d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"de26fa89-07b2-4000-810b-61e91f2979d2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.3898377} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"947beca4-6d77-475c-90ae-70bce584c717","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.3900805} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7e6dab7da38ac765c6821322fa31720d","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.389808967Z"}]},"request_id":"4438560d-0fe4-438a-b5d0-b3a617876536","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.3945882} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7e6dab7da38ac765c6821322fa31720d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7e6dab7da38ac765c6821322fa31720d"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"7e6dab7da38ac765c6821322fa31720d","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e6dab7da38ac765c6821322fa31720d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"4115d1e6f3d9231b1ce71197a783b4fc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4115d1e6f3d9231b1ce71197a783b4fc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4115d1e6f3d9231b1ce71197a783b4fc"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.674246,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4115d1e6f3d9231b1ce71197a783b4fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4115d1e6f3d9231b1ce71197a783b4fc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"182af579-501c-43f9-999c-321110e7a680","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.4248438} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4115d1e6f3d9231b1ce71197a783b4fc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ff96e7d-0048-4fa2-97bf-0f4760c37fc3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.4300728} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4115d1e6f3d9231b1ce71197a783b4fc","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"31cf8e2a-47e4-4588-9060-bdadfa25f9e2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.4432847} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bad22dc3-1cef-4341-be46-1c599ecf8d41","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.4433453} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"4115d1e6f3d9231b1ce71197a783b4fc","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.443257049Z"}]},"request_id":"574911d8-f5c0-4d7d-af18-234b0ee9bf1e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.4469962} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4115d1e6f3d9231b1ce71197a783b4fc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4115d1e6f3d9231b1ce71197a783b4fc"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"4115d1e6f3d9231b1ce71197a783b4fc","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4115d1e6f3d9231b1ce71197a783b4fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"bef87621bcd53275ac056bd97f078e85"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"bef87621bcd53275ac056bd97f078e85","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"32e3c64eed8bb73d95ae2b207ec653e2"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"32e3c64eed8bb73d95ae2b207ec653e2","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bef87621bcd53275ac056bd97f078e85"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"32e3c64eed8bb73d95ae2b207ec653e2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629879,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bef87621bcd53275ac056bd97f078e85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bef87621bcd53275ac056bd97f078e85","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.559628,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"32e3c64eed8bb73d95ae2b207ec653e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"32e3c64eed8bb73d95ae2b207ec653e2","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.389808967Z"}]},"request_id":"40b83891-1a75-40f7-8b37-548eb2f9de07","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.938867} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bef87621bcd53275ac056bd97f078e85","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.443257049Z"}]},"request_id":"70c50bd0-19d5-4427-a00f-cb041c3f15de","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.9398897} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"32e3c64eed8bb73d95ae2b207ec653e2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d456bb3b-b7c2-4a12-b87c-d802bc29c1a8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.9437563} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"bef87621bcd53275ac056bd97f078e85","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a01f844c-0237-4ef4-8800-a03ea79b3dd7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.9451277} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"32e3c64eed8bb73d95ae2b207ec653e2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.443257049Z"}]},"request_id":"e6740b6c-4090-4262-a609-f2ba6b09197e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.9478798} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"32e3c64eed8bb73d95ae2b207ec653e2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"32e3c64eed8bb73d95ae2b207ec653e2"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"32e3c64eed8bb73d95ae2b207ec653e2"} device-1 | {"level":"info","message":"PATCH /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc 200 19ms","method":"PATCH","requestID":"32e3c64eed8bb73d95ae2b207ec653e2","responseTime":19,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"a7ee4b4a27d88a2cc73f8e215ac88806"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a7ee4b4a27d88a2cc73f8e215ac88806","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a7ee4b4a27d88a2cc73f8e215ac88806"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.389808967Z"}]},"request_id":"8c6013ef-e35f-4979-b44e-2cdbd27c4e41","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138846.95909} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bef87621bcd53275ac056bd97f078e85","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662226,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bef87621bcd53275ac056bd97f078e85"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a7ee4b4a27d88a2cc73f8e215ac88806","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a7ee4b4a27d88a2cc73f8e215ac88806","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"bef87621bcd53275ac056bd97f078e85"} device-1 | {"level":"info","message":"PATCH /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5 200 33ms","method":"PATCH","requestID":"bef87621bcd53275ac056bd97f078e85","responseTime":33,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw","level":"info","message":"auth send jwt","requestID":"21f9017a19f58cc9a8726bbfe3e426c9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21f9017a19f58cc9a8726bbfe3e426c9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"21f9017a19f58cc9a8726bbfe3e426c9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692895,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"21f9017a19f58cc9a8726bbfe3e426c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138846,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0Nn0.rk3nVVb3AP2AlECHj-Q7Qr880SuaR0DbQr-bxVWBuRw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21f9017a19f58cc9a8726bbfe3e426c9","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a7ee4b4a27d88a2cc73f8e215ac88806"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a7ee4b4a27d88a2cc73f8e215ac88806"} device-1 | {"level":"info","message":"POST /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/websocket 200 17ms","method":"POST","requestID":"a7ee4b4a27d88a2cc73f8e215ac88806","responseTime":17,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"21f9017a19f58cc9a8726bbfe3e426c9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"21f9017a19f58cc9a8726bbfe3e426c9"} device-1 | {"level":"info","message":"POST /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/websocket 200 16ms","method":"POST","requestID":"21f9017a19f58cc9a8726bbfe3e426c9","responseTime":16,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE","level":"info","message":"auth send jwt","requestID":"87ff3a80a7c58d79b9b1085e42d58964"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"87ff3a80a7c58d79b9b1085e42d58964","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"87ff3a80a7c58d79b9b1085e42d58964"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.55847,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"87ff3a80a7c58d79b9b1085e42d58964","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"87ff3a80a7c58d79b9b1085e42d58964","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.389808967Z"}]},"request_id":"098b6795-301b-4a77-9497-60ddcf5ca490","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.0246642} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"87ff3a80a7c58d79b9b1085e42d58964","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"87ff3a80a7c58d79b9b1085e42d58964"} gateway-1 | {"time_local":"16/Jul/2024:14:07:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87ff3a80a7c58d79b9b1085e42d58964"} device-1 | {"level":"info","message":"GET /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5? 200 18ms","method":"GET","requestID":"87ff3a80a7c58d79b9b1085e42d58964","responseTime":18,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE","level":"info","message":"auth send jwt","requestID":"db4d4bd304a244b1ec115793957cd557"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db4d4bd304a244b1ec115793957cd557","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db4d4bd304a244b1ec115793957cd557"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181464,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"db4d4bd304a244b1ec115793957cd557","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"db4d4bd304a244b1ec115793957cd557","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.443257049Z"}]},"request_id":"ffc3ca03-7f0c-4a5c-b932-f6a2aad6e251","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.0490692} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"db4d4bd304a244b1ec115793957cd557","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db4d4bd304a244b1ec115793957cd557"} gateway-1 | {"time_local":"16/Jul/2024:14:07:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"db4d4bd304a244b1ec115793957cd557"} device-1 | {"level":"info","message":"GET /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc? 200 17ms","method":"GET","requestID":"db4d4bd304a244b1ec115793957cd557","responseTime":17,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE","level":"info","message":"auth send jwt","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.172876,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Attempting to run experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Attempting to book experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully booked experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb6a3440-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb6a5b50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.828985,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb6a3440-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb6a3440-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.364409,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb6a5b50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb6a5b50-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.389808967Z"}]},"request_id":"093f86c5-edd3-4074-bb7a-6a1f52556bcb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.1182487} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bb6a3440-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.443257049Z"}]},"request_id":"78a4af21-4085-4e6c-88e2-57395af74ec4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.1199667} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bb6a5b50-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb6a3440-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5? 200 17ms","method":"GET","requestID":"bb6a3440-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb6a5b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc? 200 17ms","method":"GET","requestID":"bb6a5b50-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Setting up experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully set up experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb764230-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb769050-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb76de70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.374336,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully running experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb764230-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bb764230-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.294358,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb769050-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"bb769050-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.703071,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3bb04664-5ce1-4b82-9a3f-e26a276a5ee8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.201161} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb76de70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"bb76de70-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.389808967Z"}]},"request_id":"ea77979e-45ce-4ce2-9993-f9dda36de621","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2040098} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.443257049Z"}]},"request_id":"1ad6b207-215a-4ca7-bfb4-d4be64e5b4c1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.205926} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"bb764230-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bb769050-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb76de70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling 200 24ms","method":"POST","requestID":"bb76de70-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb764230-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5? 200 30ms","method":"GET","requestID":"bb764230-437c-11ef-8659-f5877ab12720","responseTime":30,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb769050-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc? 200 29ms","method":"GET","requestID":"bb769050-437c-11ef-8659-f5877ab12720","responseTime":29,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb7b2430-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19a2afa3-a827-4655-b058-f8f6d0db3bd9#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19a2afa3-a827-4655-b058-f8f6d0db3bd9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"1c99c9c3-3729-4430-bb36-5e5c066a38ee","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.221201} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb7b9960-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a690bc7-1252-4309-9ca9-a7c12dc6bc68","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2215729} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21eb5332-1296-483f-ba08-c7e025f7cfa3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2271423} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.517978,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb7b2430-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bb7b2430-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4eb48868-6ac2-43d2-8037-2ca1bad3dfd2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2301548} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.740326,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb7b9960-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bb7b9960-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} gateway-1 | {"time_local":"16/Jul/2024:14:07:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 170ms","method":"POST","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0","responseTime":170,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb7b2430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling 200 15ms","method":"POST","requestID":"bb7b2430-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb7b9960-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling 200 14ms","method":"POST","requestID":"bb7b9960-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb7de350-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE","level":"info","message":"auth send jwt","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.512445,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5e4ffdcbea0735fb0c59b19a755c36f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da9ff8ea-854e-41a2-b620-e6c19dd0d820","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2452843} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.394242,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb7de350-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bb7de350-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.389808967Z"}]},"request_id":"b95cb167-935b-4667-915d-3bbc0cfc6906","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2507954} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb7de350-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling 200 14ms","method":"POST","requestID":"bb7de350-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Building connection plan","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"5f480811-953b-4def-a329-e53a884cf593"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"9472517f-76fe-42ee-b55e-ce1ec7ee5c54"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"933ba041-55e3-47ad-9260-e714870ac6ec"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9"} device-1 | {"level":"info","message":"GET /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5? 200 17ms","method":"GET","requestID":"5e4ffdcbea0735fb0c59b19a755c36f9","responseTime":17,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bb80c980-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.908513,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE","level":"info","message":"auth send jwt","requestID":"92df301fdf4988213180bdf0788671f2"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb80c980-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"92df301fdf4988213180bdf0788671f2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb80c980-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92df301fdf4988213180bdf0788671f2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047116,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"92df301fdf4988213180bdf0788671f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138847,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0N30.ogNa6ea3n5CJk0EggSyTm5SkWiKs4_ei2OdCS01AcsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92df301fdf4988213180bdf0788671f2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"4767be1b-73c7-40e4-b9aa-fb6d733b4ee4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2727897} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be26a249-cf1b-426c-8b90-7dbc8e954c22","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2730675} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:26.443257049Z"}]},"request_id":"509680ed-086f-4f24-93ed-4e1603340f65","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.2740653} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"bb80c980-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"92df301fdf4988213180bdf0788671f2","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92df301fdf4988213180bdf0788671f2"} gateway-1 | {"time_local":"16/Jul/2024:14:07:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"92df301fdf4988213180bdf0788671f2"} device-1 | {"level":"info","message":"GET /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc? 200 18ms","method":"GET","requestID":"92df301fdf4988213180bdf0788671f2","responseTime":18,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bb80c980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bb80c980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf'","requestID":"bb80c980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf'","requestID":"bb80c980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bb80c980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 35ms","method":"POST","requestID":"bb80c980-437c-11ef-8659-f5877ab12720","responseTime":35,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"bb80c980-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6272a09ae3cffcfe70b1eab24c1f2cf0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb8bc600-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"097195c0-4fbc-45ce-b136-433148a7f551","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.3339517} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.367219,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb8bc600-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bb8bc600-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb8bc600-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling 200 12ms","method":"POST","requestID":"bb8bc600-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bb8de8e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f606a70-7202-4c4d-aea8-49c0245dfced","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138847.3481393} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.920673,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bb8de8e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bb8de8e0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bb8de8e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling 200 12ms","method":"POST","requestID":"bb8de8e0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9a74a598454a6177994cd0f036b999a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9a74a598454a6177994cd0f036b999a8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf"}}},"level":"info","message":"received a callback","requestID":"9a74a598454a6177994cd0f036b999a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"9a74a598454a6177994cd0f036b999a8","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"9a74a598454a6177994cd0f036b999a8"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8795c82a3d2588fdbb24dabdedd03401","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8795c82a3d2588fdbb24dabdedd03401","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf"}}},"level":"info","message":"received a callback","requestID":"8795c82a3d2588fdbb24dabdedd03401"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bcc94f10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2435779-465d-4c2c-acbd-eeea875ba2bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"847f70bd-99f8-4ca4-b0ef-cc2fcfe659f2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.414352} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.006355,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bcc94f10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bcc94f10-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bcc94f10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf 200 10ms","method":"GET","requestID":"bcc94f10-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"8795c82a3d2588fdbb24dabdedd03401","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"8795c82a3d2588fdbb24dabdedd03401"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bcce0a00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36bbaf6c-60c1-4a0a-a076-b5a8d21a5175","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.4458182} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.035286,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bcce0a00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bcce0a00-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bcce0a00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling 200 11ms","method":"POST","requestID":"bcce0a00-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bcd02ce0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4db2002b-b3dc-4f3b-9121-29853b53700d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.4606576} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.021103,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bcd02ce0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bcd02ce0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bcd02ce0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling 200 12ms","method":"POST","requestID":"bcd02ce0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ","level":"info","message":"auth send jwt","requestID":"5bf2bd304899f8b7cac487e276237bcf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5bf2bd304899f8b7cac487e276237bcf","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","requestID":"5bf2bd304899f8b7cac487e276237bcf"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.652661,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5bf2bd304899f8b7cac487e276237bcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138849,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5bf2bd304899f8b7cac487e276237bcf","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","requestID":"5bf2bd304899f8b7cac487e276237bcf"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bf2bd304899f8b7cac487e276237bcf"} experiment-1 | {"level":"info","message":"GET /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9 200 15ms","method":"GET","requestID":"5bf2bd304899f8b7cac487e276237bcf","responseTime":15,"status":200,"url":"/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ","level":"info","message":"auth send jwt","requestID":"036848a488d7f6a007a1649381e0b6f8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"036848a488d7f6a007a1649381e0b6f8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","requestID":"036848a488d7f6a007a1649381e0b6f8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.231197,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"036848a488d7f6a007a1649381e0b6f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138849,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"036848a488d7f6a007a1649381e0b6f8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Attempting to finish experiment","requestID":"036848a488d7f6a007a1649381e0b6f8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bcdcd710-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.219637,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bcdcd710-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138849,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bcdcd710-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d42971cdf56975b99042b6f641f9bce0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d42971cdf56975b99042b6f641f9bce0","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2435779-465d-4c2c-acbd-eeea875ba2bf': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2435779-465d-4c2c-acbd-eeea875ba2bf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"a963b800-7bbf-4e5e-8298-d7c506e6730f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.562738} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"837c6f6a40d69c590bde94ce0e3e0f3e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf"}}},"level":"info","message":"received a callback","requestID":"d42971cdf56975b99042b6f641f9bce0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"837c6f6a40d69c590bde94ce0e3e0f3e","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5926a88-b7cd-4ccd-9756-d134164feccf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.563295} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"bcdcd710-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf"}}},"level":"info","message":"received a callback","requestID":"837c6f6a40d69c590bde94ce0e3e0f3e"} device-1 | {"data":{"peerconnection":"f2435779-465d-4c2c-acbd-eeea875ba2bf","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bcdcd710-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf 204 48ms","method":"DELETE","requestID":"bcdcd710-437c-11ef-8659-f5877ab12720","responseTime":48,"status":204,"url":"/peerconnections/f2435779-465d-4c2c-acbd-eeea875ba2bf"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"},"level":"info","message":"Successfully finished experiment","requestID":"036848a488d7f6a007a1649381e0b6f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bce7faa0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c81dc1b-91c0-4ac2-bcd6-4b26311605fc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.6219535} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.526984,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bce7faa0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bce7faa0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bce7faa0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling 200 18ms","method":"POST","requestID":"bce7faa0-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bceb2ef0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19a2afa3-a827-4655-b058-f8f6d0db3bd9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F19a2afa3-a827-4655-b058-f8f6d0db3bd9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"77a9da77-9cbd-4791-b5fc-530b225e8144","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.6318905} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39df1b2b-49b7-46e6-9499-3232df01ac31","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.6326106} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"036848a488d7f6a007a1649381e0b6f8","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07b20021-0f2a-484a-bb29-1bfe66faeddc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41f823d5-8224-4171-81df-ac132e69b876","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.6378534} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.10985,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bceb2ef0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bceb2ef0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bceb2ef0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling 200 12ms","method":"POST","requestID":"bceb2ef0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9","requestID":"036848a488d7f6a007a1649381e0b6f8"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"036848a488d7f6a007a1649381e0b6f8"} experiment-1 | {"level":"info","message":"DELETE /experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9 204 181ms","method":"DELETE","requestID":"036848a488d7f6a007a1649381e0b6f8","responseTime":181,"status":204,"url":"/experiments/19a2afa3-a827-4655-b058-f8f6d0db3bd9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.719","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"82b22af97a8b7e97143a783056e3c988"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.730","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"172e76d02f0807e8afc5ab0336066cf2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"d42971cdf56975b99042b6f641f9bce0","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"d42971cdf56975b99042b6f641f9bce0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 143ms","method":"POST","requestID":"837c6f6a40d69c590bde94ce0e3e0f3e","responseTime":143,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"837c6f6a40d69c590bde94ce0e3e0f3e"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/07b20021-0f2a-484a-bb29-1bfe66faeddc' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ","level":"info","message":"auth send jwt","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.093378,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138849,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f5e76de6-71b2-40f7-a9ef-fb6f64f33ca5' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"716f9177-e51f-44b1-ada5-05c18011947c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.7338111} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"555e53e6-88aa-41a8-88a0-0ae2d8422583","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.7403662} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a9042759-ddf7-4974-8ffa-871ea43aeaf6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.7523837} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57de8865-af1b-4f95-9db2-6fbfb2f38d82","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.7527092} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.752349246Z"}]},"request_id":"3be54d17-328c-4e1c-81f1-ceb8b1d93ae7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.75784} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"ff3bf8ce3d6510417d9d29827a7b34ce","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ","level":"info","message":"auth send jwt","requestID":"c56aac8bf452ac56584bdc34628cfd0e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c56aac8bf452ac56584bdc34628cfd0e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c56aac8bf452ac56584bdc34628cfd0e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.844054,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c56aac8bf452ac56584bdc34628cfd0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138849,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg0OX0.fvvX8S2VP6ZhMoAw4_8PUMATy_MtfqBIJAxlAe0FjnQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c56aac8bf452ac56584bdc34628cfd0e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3e39d5d4-3335-4902-9941-0094f08979d1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.7896156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c56aac8bf452ac56584bdc34628cfd0e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2eaf46f7-c707-400c-99d7-0e4cd35f91bc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.7944167} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c56aac8bf452ac56584bdc34628cfd0e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"fb441ef3-8456-4f32-a5dd-93c2ed05f035","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.8061128} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b16c3f40-f4f2-49fa-a40e-585a89d3b68a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.8063898} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"c56aac8bf452ac56584bdc34628cfd0e","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.806087623Z"}]},"request_id":"bcd95f17-a820-429b-8008-dab8a048f6d2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138849.8121996} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c56aac8bf452ac56584bdc34628cfd0e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c56aac8bf452ac56584bdc34628cfd0e"} gateway-1 | {"time_local":"16/Jul/2024:14:07:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c56aac8bf452ac56584bdc34628cfd0e"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"c56aac8bf452ac56584bdc34628cfd0e","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"b3a42b9143227fed648123efe07536f6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b3a42b9143227fed648123efe07536f6","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"f815762741a3e04041a74bc156e8b372"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b3a42b9143227fed648123efe07536f6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f815762741a3e04041a74bc156e8b372","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f815762741a3e04041a74bc156e8b372"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.126301,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b3a42b9143227fed648123efe07536f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b3a42b9143227fed648123efe07536f6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.967949,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f815762741a3e04041a74bc156e8b372","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f815762741a3e04041a74bc156e8b372","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.752349246Z"}]},"request_id":"9f35a8eb-e5be-4c1d-ae0e-6aca763815ba","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.299335} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b3a42b9143227fed648123efe07536f6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.806087623Z"}]},"request_id":"a362b3ea-c4da-43ff-b14d-0e1e80e2f5e3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.30029} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f815762741a3e04041a74bc156e8b372","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"160a7d98-f934-4b07-92fb-b1d1b65bbcb4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.3051276} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b3a42b9143227fed648123efe07536f6","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"469af31e-e5cf-44cd-be3b-29c49cb87279","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.3063576} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f815762741a3e04041a74bc156e8b372","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.806087623Z"}]},"request_id":"e90b29a6-ea4f-4b3b-bded-d1c5aa056b6d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.3098977} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f815762741a3e04041a74bc156e8b372","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f815762741a3e04041a74bc156e8b372"} device-1 | {"level":"info","message":"PATCH /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689 200 23ms","method":"PATCH","requestID":"f815762741a3e04041a74bc156e8b372","responseTime":23,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f815762741a3e04041a74bc156e8b372"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"0dc9b6c65d2696dc210a1bb97ac78928"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0dc9b6c65d2696dc210a1bb97ac78928","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0dc9b6c65d2696dc210a1bb97ac78928"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638232,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0dc9b6c65d2696dc210a1bb97ac78928","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0dc9b6c65d2696dc210a1bb97ac78928","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.752349246Z"}]},"request_id":"966969d9-b92d-41eb-83f4-75f3b9ed3c36","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.320396} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b3a42b9143227fed648123efe07536f6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b3a42b9143227fed648123efe07536f6"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9697eba1-1601-4b91-9d20-d581e04c7772 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b3a42b9143227fed648123efe07536f6"} device-1 | {"level":"info","message":"PATCH /devices/9697eba1-1601-4b91-9d20-d581e04c7772 200 36ms","method":"PATCH","requestID":"b3a42b9143227fed648123efe07536f6","responseTime":36,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"6cc3d771b818f1ee9b9c65509a17351b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6cc3d771b818f1ee9b9c65509a17351b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6cc3d771b818f1ee9b9c65509a17351b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87938,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6cc3d771b818f1ee9b9c65509a17351b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6cc3d771b818f1ee9b9c65509a17351b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0dc9b6c65d2696dc210a1bb97ac78928"} device-1 | {"level":"info","message":"POST /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/websocket 200 18ms","method":"POST","requestID":"0dc9b6c65d2696dc210a1bb97ac78928","responseTime":18,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0dc9b6c65d2696dc210a1bb97ac78928"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6cc3d771b818f1ee9b9c65509a17351b"} device-1 | {"level":"info","message":"POST /devices/9697eba1-1601-4b91-9d20-d581e04c7772/websocket 200 17ms","method":"POST","requestID":"6cc3d771b818f1ee9b9c65509a17351b","responseTime":17,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9697eba1-1601-4b91-9d20-d581e04c7772/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"6cc3d771b818f1ee9b9c65509a17351b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836822,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6557d8fc8514ad6b3fb1dba1c000a59b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.752349246Z"}]},"request_id":"23b794fd-fb11-4b71-9539-961075786c93","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.3820944} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b"} device-1 | {"level":"info","message":"GET /devices/9697eba1-1601-4b91-9d20-d581e04c7772? 200 16ms","method":"GET","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b","responseTime":16,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9697eba1-1601-4b91-9d20-d581e04c7772? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6557d8fc8514ad6b3fb1dba1c000a59b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.16542,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.806087623Z"}]},"request_id":"c75b1bce-86b7-4860-b566-e44c55c1cbf0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.406928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae"} device-1 | {"level":"info","message":"GET /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689? 200 18ms","method":"GET","requestID":"f5f299ba18d4d1ab1b37c5daa8fc53ae","responseTime":18,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"51bf7f9d7232786373e31e404b181ac6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"51bf7f9d7232786373e31e404b181ac6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"51bf7f9d7232786373e31e404b181ac6"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.335958,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"51bf7f9d7232786373e31e404b181ac6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"51bf7f9d7232786373e31e404b181ac6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Attempting to run experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Attempting to book experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully booked experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd6a22f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd6a7110-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.734612,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd6a22f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd6a22f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.789051,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd6a7110-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bd6a7110-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.752349246Z"}]},"request_id":"dfb12ef6-6fa8-4af8-99c6-57c8802b66a5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.475755} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd6a22f0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.806087623Z"}]},"request_id":"46fe83c5-4204-469c-9d7d-9c91371b599a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.4769156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bd6a7110-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd6a22f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/9697eba1-1601-4b91-9d20-d581e04c7772? 200 17ms","method":"GET","requestID":"bd6a22f0-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd6a7110-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689? 200 17ms","method":"GET","requestID":"bd6a7110-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Setting up experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully set up experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd74d150-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd754680-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd7594a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.769959,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully running experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd74d150-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bd74d150-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.694022,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd754680-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bd754680-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.062003,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eaa30bfd-e8b8-422f-8ef8-204876016bb1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.5457418} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.752349246Z"}]},"request_id":"f77b9fdb-86b6-439c-b8e2-1097cb20b2e4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.546498} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd74d150-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd7594a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bd7594a0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.806087623Z"}]},"request_id":"cafd34da-2394-430b-a747-b87007ad11de","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.5483975} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bd754680-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd74d150-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/9697eba1-1601-4b91-9d20-d581e04c7772? 200 24ms","method":"GET","requestID":"bd74d150-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd7594a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling 200 20ms","method":"POST","requestID":"bd7594a0-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd754680-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689? 200 24ms","method":"GET","requestID":"bd754680-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd791710-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1fdafc4-79ee-4483-974d-d0683f265be2#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1fdafc4-79ee-4483-974d-d0683f265be2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"852a506a-5088-4e69-ae64-64346574e3d4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.5632384} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2fec3d5-e4d2-4165-b310-38cbadfbfe20","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.563624} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd798c40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"51bf7f9d7232786373e31e404b181ac6","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e61e804-8a6f-4ac7-999f-1ba10cb6be17","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.5690844} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.606649,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd791710-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd791710-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e495f7e-5dad-40ee-8a11-7ca1f509dd48","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.5718455} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.657895,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd798c40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bd798c40-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"51bf7f9d7232786373e31e404b181ac6"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 155ms","method":"POST","requestID":"51bf7f9d7232786373e31e404b181ac6","responseTime":155,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd791710-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling 200 19ms","method":"POST","requestID":"bd791710-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd798c40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling 200 18ms","method":"POST","requestID":"bd798c40-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"47aada279b1ccc08160103dfc784c6d0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"47aada279b1ccc08160103dfc784c6d0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd7cc090-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"47aada279b1ccc08160103dfc784c6d0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8806c9aa-bc2f-4f2d-b416-71c61c147e81","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.5924957} authorization-1 | {"client_addr":"127.0.0.1:43034","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.065945,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"47aada279b1ccc08160103dfc784c6d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47aada279b1ccc08160103dfc784c6d0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.778454,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd7cc090-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"bd7cc090-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.752349246Z"}]},"request_id":"4a18783c-4a09-41bb-8a60-1902377773c7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.5995715} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"47aada279b1ccc08160103dfc784c6d0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd7cc090-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling 200 18ms","method":"POST","requestID":"bd7cc090-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Building connection plan","requestID":"51bf7f9d7232786373e31e404b181ac6"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"1c038879-df3c-411e-981b-3da76b1c8fcb"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"6e0f92e9-24d7-42bf-8b3b-2fd2a87ce66a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"904489f7-94fb-4e9a-a0c3-3cececd3e7a4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"51bf7f9d7232786373e31e404b181ac6"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"47aada279b1ccc08160103dfc784c6d0"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"51bf7f9d7232786373e31e404b181ac6"} device-1 | {"level":"info","message":"GET /devices/9697eba1-1601-4b91-9d20-d581e04c7772? 200 17ms","method":"GET","requestID":"47aada279b1ccc08160103dfc784c6d0","responseTime":17,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9697eba1-1601-4b91-9d20-d581e04c7772? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"47aada279b1ccc08160103dfc784c6d0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.677995,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0","level":"info","message":"auth send jwt","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.386449,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9f78835ff6122e0cd992d07cc2cd4ee5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138850,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1MH0.ylENywQnG1D-JSfMBg99YebGXp2iv-KWqKkgI0KyS_0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"e2770535-6468-4eb6-8e9f-7135b82e1069","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.619244} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a69d73c-9f6c-43bd-a387-49c5edbb3307","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.6194015} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:29.806087623Z"}]},"request_id":"3d9e3f6b-54ba-4ee6-8369-9c6952da60b1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.6200678} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5"} gateway-1 | {"time_local":"16/Jul/2024:14:07:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5"} device-1 | {"level":"info","message":"GET /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689? 200 13ms","method":"GET","requestID":"9f78835ff6122e0cd992d07cc2cd4ee5","responseTime":13,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56'","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56'","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"bd7ff4e0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"51bf7f9d7232786373e31e404b181ac6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd883240-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c016894f-78a5-432b-8f9a-640207d9e1ae","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.6645865} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.768965,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd883240-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd883240-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd883240-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling 200 8ms","method":"POST","requestID":"bd883240-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bd89b8e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"107f0cfa-b57a-4c26-95d8-cff4fee1fdee","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138850.6750038} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.83024,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bd89b8e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd89b8e0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bd89b8e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling 200 10ms","method":"POST","requestID":"bd89b8e0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e1daf792b55cdb61d04b3d9888a9ed54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e1daf792b55cdb61d04b3d9888a9ed54","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56"}}},"level":"info","message":"received a callback","requestID":"e1daf792b55cdb61d04b3d9888a9ed54"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"e1daf792b55cdb61d04b3d9888a9ed54","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"e1daf792b55cdb61d04b3d9888a9ed54"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"52bb0ed7e2d158ec26eca0c0fb67d651","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"52bb0ed7e2d158ec26eca0c0fb67d651","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56"}}},"level":"info","message":"received a callback","requestID":"52bb0ed7e2d158ec26eca0c0fb67d651"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"bec80540-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F86fd86c9-cebd-4910-b423-23f60b34ff56","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"affce099-b92f-47ef-b5c7-b3881c088003","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.762411} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.855588,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bec80540-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bec80540-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"bec80540-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56 200 11ms","method":"GET","requestID":"bec80540-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"52bb0ed7e2d158ec26eca0c0fb67d651","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch","requestID":"52bb0ed7e2d158ec26eca0c0fb67d651"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"becdf8b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"551a7237-08b6-400b-bdb2-2c370a9187da","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.801497} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.56427,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"becdf8b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"becdf8b0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"becdf8b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling 200 13ms","method":"POST","requestID":"becdf8b0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bed069b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1ef65d5-d0b3-40d6-91a2-2369badd7e62","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.8175611} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.709327,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bed069b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bed069b0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bed069b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling 200 13ms","method":"POST","requestID":"bed069b0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1Mn0.IOmkqnOB8u9v-o-QBJE6NfQTXplIKnczyNxZ_eLJnqM","level":"info","message":"auth send jwt","requestID":"b942d4f41d8cb198bbf846326f0f290a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b942d4f41d8cb198bbf846326f0f290a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","requestID":"b942d4f41d8cb198bbf846326f0f290a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.225961,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b942d4f41d8cb198bbf846326f0f290a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138852,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1Mn0.IOmkqnOB8u9v-o-QBJE6NfQTXplIKnczyNxZ_eLJnqM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b942d4f41d8cb198bbf846326f0f290a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","requestID":"b942d4f41d8cb198bbf846326f0f290a"} experiment-1 | {"level":"info","message":"GET /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2 200 14ms","method":"GET","requestID":"b942d4f41d8cb198bbf846326f0f290a","responseTime":14,"status":200,"url":"/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"} gateway-1 | {"time_local":"16/Jul/2024:14:07:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b942d4f41d8cb198bbf846326f0f290a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1Mn0.IOmkqnOB8u9v-o-QBJE6NfQTXplIKnczyNxZ_eLJnqM","level":"info","message":"auth send jwt","requestID":"adcbb67e5ee31ef6f080434eeb24e63a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"adcbb67e5ee31ef6f080434eeb24e63a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","requestID":"adcbb67e5ee31ef6f080434eeb24e63a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.093136,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"adcbb67e5ee31ef6f080434eeb24e63a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138852,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1Mn0.IOmkqnOB8u9v-o-QBJE6NfQTXplIKnczyNxZ_eLJnqM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"adcbb67e5ee31ef6f080434eeb24e63a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Attempting to finish experiment","requestID":"adcbb67e5ee31ef6f080434eeb24e63a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"bedaf100-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.201533,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bedaf100-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138852,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1Mn0.IOmkqnOB8u9v-o-QBJE6NfQTXplIKnczyNxZ_eLJnqM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bedaf100-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"540dbe064d0e70fd53c29fc025f32ac1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F86fd86c9-cebd-4910-b423-23f60b34ff56': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F86fd86c9-cebd-4910-b423-23f60b34ff56","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"8afea578-fcd5-466f-aefc-d7f7d0fd74de","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.9013538} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"540dbe064d0e70fd53c29fc025f32ac1","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"808bcb1b-e89e-457e-be3a-19da404f3148","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.9016168} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a78f67354d27a94bbd09be38b8d3f97","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56"}}},"level":"info","message":"received a callback","requestID":"540dbe064d0e70fd53c29fc025f32ac1"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"bedaf100-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3a78f67354d27a94bbd09be38b8d3f97","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56"}}},"level":"info","message":"received a callback","requestID":"3a78f67354d27a94bbd09be38b8d3f97"} device-1 | {"data":{"peerconnection":"86fd86c9-cebd-4910-b423-23f60b34ff56","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"bedaf100-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56 204 41ms","method":"DELETE","requestID":"bedaf100-437c-11ef-8659-f5877ab12720","responseTime":41,"status":204,"url":"/peerconnections/86fd86c9-cebd-4910-b423-23f60b34ff56"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"},"level":"info","message":"Successfully finished experiment","requestID":"adcbb67e5ee31ef6f080434eeb24e63a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bee32e60-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9697eba1-1601-4b91-9d20-d581e04c7772","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dbdc60b5-e61a-4979-9f22-f5bfcacfea89","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.9398196} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.648543,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bee32e60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"bee32e60-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bee32e60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling 200 12ms","method":"POST","requestID":"bee32e60-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/9697eba1-1601-4b91-9d20-d581e04c7772/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1fdafc4-79ee-4483-974d-d0683f265be2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd1fdafc4-79ee-4483-974d-d0683f265be2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"d90cbb7e-f4b8-4afd-931e-c9007b813ea8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.94621} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0561a37c-50f2-408e-af57-8e0eb5ffd041","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.9464228} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"adcbb67e5ee31ef6f080434eeb24e63a","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"bee55140-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc22e3ee0-5757-4c1d-93bf-2eddeed5d689","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b55bcd74-9b29-4e4e-bf16-aced3cffa580","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138852.9529183} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.187289,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bee55140-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bee55140-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"bee55140-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling 200 9ms","method":"POST","requestID":"bee55140-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2","requestID":"adcbb67e5ee31ef6f080434eeb24e63a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"adcbb67e5ee31ef6f080434eeb24e63a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.670","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8642555f099921fa587a320442380cd4"} experiment-1 | {"level":"info","message":"DELETE /experiments/d1fdafc4-79ee-4483-974d-d0683f265be2 204 150ms","method":"DELETE","requestID":"adcbb67e5ee31ef6f080434eeb24e63a","responseTime":150,"status":204,"url":"/experiments/d1fdafc4-79ee-4483-974d-d0683f265be2"} gateway-1 | {"time_local":"16/Jul/2024:14:07:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.680","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a65ec519ee9de808af65a8c8de37f1d7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"540dbe064d0e70fd53c29fc025f32ac1","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"540dbe064d0e70fd53c29fc025f32ac1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"3a78f67354d27a94bbd09be38b8d3f97","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"3a78f67354d27a94bbd09be38b8d3f97"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1M30.dj4BR5xkc-Cj3ymJDAxvTx6qHhDmVb8Eag1g7sUDRgM","level":"info","message":"auth send jwt","requestID":"a65af11cd6de28e54ce598d37ec580ec"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c22e3ee0-5757-4c1d-93bf-2eddeed5d689' closed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a65af11cd6de28e54ce598d37ec580ec","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a65af11cd6de28e54ce598d37ec580ec"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.121334,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a65af11cd6de28e54ce598d37ec580ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138853,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1M30.dj4BR5xkc-Cj3ymJDAxvTx6qHhDmVb8Eag1g7sUDRgM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a65af11cd6de28e54ce598d37ec580ec","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9697eba1-1601-4b91-9d20-d581e04c7772' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7f89ae69-4861-4bac-9e7f-bc0af6e080d1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.044472} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a65af11cd6de28e54ce598d37ec580ec","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d078daa-ff1b-4b5c-8cef-26321c1b2f22","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.051062} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a65af11cd6de28e54ce598d37ec580ec","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"fe4aa9d6-c5b9-4d61-bf9e-b4399de37d92","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.0621674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"759d7372-00a5-4e52-a756-272177aaaa7a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.062295} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a65af11cd6de28e54ce598d37ec580ec","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.062123739Z"}]},"request_id":"64961d79-a3fb-4a16-b08e-1fbc6c6bd687","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.0670881} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a65af11cd6de28e54ce598d37ec580ec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a65af11cd6de28e54ce598d37ec580ec"} gateway-1 | {"time_local":"16/Jul/2024:14:07:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a65af11cd6de28e54ce598d37ec580ec"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"a65af11cd6de28e54ce598d37ec580ec","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1M30.dj4BR5xkc-Cj3ymJDAxvTx6qHhDmVb8Eag1g7sUDRgM","level":"info","message":"auth send jwt","requestID":"4194f3f46edd927450eb7c9af2d37970"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4194f3f46edd927450eb7c9af2d37970","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4194f3f46edd927450eb7c9af2d37970"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.800282,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4194f3f46edd927450eb7c9af2d37970","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138853,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1M30.dj4BR5xkc-Cj3ymJDAxvTx6qHhDmVb8Eag1g7sUDRgM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4194f3f46edd927450eb7c9af2d37970","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5b828624-a865-417e-8b48-09faee2fa973","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.0973773} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4194f3f46edd927450eb7c9af2d37970","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70878e6f-c3ac-405d-ba17-3642be75748c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.1031694} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4194f3f46edd927450eb7c9af2d37970","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"c5a814c5-c3d5-433f-85c2-f95385b1b789","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.1147623} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80622b51-7a49-4716-b4ff-d5559c1a43dd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.1150155} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"4194f3f46edd927450eb7c9af2d37970","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.114717123Z"}]},"request_id":"3218fb0b-e6b2-422d-98b7-c0fa8e873e29","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138853.125659} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4194f3f46edd927450eb7c9af2d37970","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4194f3f46edd927450eb7c9af2d37970"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"4194f3f46edd927450eb7c9af2d37970","responseTime":54,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4194f3f46edd927450eb7c9af2d37970"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2be8944ca97052739c86b81ab4bcc788","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2be8944ca97052739c86b81ab4bcc788","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8bd7bdb85c73946f11d088ab11f5ccc6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8bd7bdb85c73946f11d088ab11f5ccc6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2f7177f1-6464-40d3-8f33-43d024414c44/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2be8944ca97052739c86b81ab4bcc788"} device-1 | {"level":"info","message":"OPTIONS /devices/2f7177f1-6464-40d3-8f33-43d024414c44/websocket 200 1ms","method":"OPTIONS","requestID":"2be8944ca97052739c86b81ab4bcc788","responseTime":1,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8bd7bdb85c73946f11d088ab11f5ccc6"} device-1 | {"level":"info","message":"OPTIONS /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/websocket 200 1ms","method":"OPTIONS","requestID":"8bd7bdb85c73946f11d088ab11f5ccc6","responseTime":1,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"2c2b573fefe511af5d2788666c6a14fd"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"2c2b573fefe511af5d2788666c6a14fd","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"fa3734b8b4d90ba299dd0b735502b262"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2c2b573fefe511af5d2788666c6a14fd"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"fa3734b8b4d90ba299dd0b735502b262","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fa3734b8b4d90ba299dd0b735502b262"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209143,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2c2b573fefe511af5d2788666c6a14fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2c2b573fefe511af5d2788666c6a14fd","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.475116,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"fa3734b8b4d90ba299dd0b735502b262","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"fa3734b8b4d90ba299dd0b735502b262","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2c2b573fefe511af5d2788666c6a14fd"} device-1 | {"level":"info","message":"POST /devices/2f7177f1-6464-40d3-8f33-43d024414c44/websocket 200 28ms","method":"POST","requestID":"2c2b573fefe511af5d2788666c6a14fd","responseTime":28,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2f7177f1-6464-40d3-8f33-43d024414c44/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.038","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2c2b573fefe511af5d2788666c6a14fd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fa3734b8b4d90ba299dd0b735502b262"} device-1 | {"level":"info","message":"POST /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/websocket 200 37ms","method":"POST","requestID":"fa3734b8b4d90ba299dd0b735502b262","responseTime":37,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.048","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fa3734b8b4d90ba299dd0b735502b262"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"d8e44fe88c9ace5d3046e6dedefda354"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"d8e44fe88c9ace5d3046e6dedefda354","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d8e44fe88c9ace5d3046e6dedefda354"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181404,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d8e44fe88c9ace5d3046e6dedefda354","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d8e44fe88c9ace5d3046e6dedefda354","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.062123739Z"}]},"request_id":"cad81c62-f649-4639-a13a-b9eca8b505ff","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.2414699} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d8e44fe88c9ace5d3046e6dedefda354","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d8e44fe88c9ace5d3046e6dedefda354"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2f7177f1-6464-40d3-8f33-43d024414c44? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8e44fe88c9ace5d3046e6dedefda354"} device-1 | {"level":"info","message":"GET /devices/2f7177f1-6464-40d3-8f33-43d024414c44? 200 18ms","method":"GET","requestID":"d8e44fe88c9ace5d3046e6dedefda354","responseTime":18,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"882564d208e0df38a8f099cde6097371"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"882564d208e0df38a8f099cde6097371","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"882564d208e0df38a8f099cde6097371"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27191,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"882564d208e0df38a8f099cde6097371","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"882564d208e0df38a8f099cde6097371","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.114717123Z"}]},"request_id":"0d814f43-0b18-4019-b0b7-e8504c0c5fa7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.2669983} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"882564d208e0df38a8f099cde6097371","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"882564d208e0df38a8f099cde6097371"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"882564d208e0df38a8f099cde6097371"} device-1 | {"level":"info","message":"GET /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0? 200 16ms","method":"GET","requestID":"882564d208e0df38a8f099cde6097371","responseTime":16,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"e13b4d927b4f865ec9650905af3a30a3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e13b4d927b4f865ec9650905af3a30a3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e13b4d927b4f865ec9650905af3a30a3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.659052,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e13b4d927b4f865ec9650905af3a30a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e13b4d927b4f865ec9650905af3a30a3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Attempting to run experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Attempting to book experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully booked experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c04fddc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c0502be0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.644851,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c04fddc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c04fddc0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.606594,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c0502be0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c0502be0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.062123739Z"}]},"request_id":"4bd87dc4-4938-41c6-8856-ed704e778638","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.3327878} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c04fddc0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.114717123Z"}]},"request_id":"f431a5ca-7741-409e-a4ed-5bbe225056c1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.3338718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c0502be0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c04fddc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/2f7177f1-6464-40d3-8f33-43d024414c44? 200 14ms","method":"GET","requestID":"c04fddc0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c0502be0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0? 200 13ms","method":"GET","requestID":"c0502be0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Setting up experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully set up experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c059efe0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c05a3e00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c05a8c20-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.068445,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c059efe0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully running experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c059efe0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84817,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c05a3e00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c05a3e00-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.114717123Z"}]},"request_id":"7b9a70ac-b763-4b52-9e6c-39fef97192bf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4067419} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c05a3e00-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.062123739Z"}]},"request_id":"60e5c151-0a59-4a29-8e08-e08b5c6d1248","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4080157} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c059efe0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:42062","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e4b3425-cbb6-4856-87db-92d1a0d1e02a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4115136} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c05a3e00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:42062","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.411979,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} device-1 | {"level":"info","message":"GET /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0? 200 21ms","method":"GET","requestID":"c05a3e00-437c-11ef-8659-f5877ab12720","responseTime":21,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c059efe0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c05a8c20-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"GET /devices/2f7177f1-6464-40d3-8f33-43d024414c44? 200 24ms","method":"GET","requestID":"c059efe0-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44?"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"c05a8c20-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb4ddcda4-7397-4ab7-a4e5-85d91e9576e9#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb4ddcda4-7397-4ab7-a4e5-85d91e9576e9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"37f49ee6-440f-4091-9bbe-288cf9f4ceee","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4188964} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d93589e-32c9-4297-a86f-195a8a9c434f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4191606} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c05e5cb0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"e13b4d927b4f865ec9650905af3a30a3","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c05a8c20-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} device-1 | {"level":"info","message":"POST /devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling 200 28ms","method":"POST","requestID":"c05a8c20-437c-11ef-8659-f5877ab12720","responseTime":28,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d15386f-c589-4300-8c2c-1db2d0371a43","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.424497} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.105093,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c05e5cb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c05e5cb0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c05fbc40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c05e5cb0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e13b4d927b4f865ec9650905af3a30a3"} device-1 | {"level":"info","message":"POST /devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling 200 11ms","method":"POST","requestID":"c05e5cb0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"e13b4d927b4f865ec9650905af3a30a3","responseTime":151,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e13b4d927b4f865ec9650905af3a30a3"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd42d363-606f-4fba-a3ae-b9214a50b6a0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4336457} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.885068,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c060a6a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c05fbc40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c05fbc40-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"a6c1379d4a83b0c45c70a88ed31fb196"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a6c1379d4a83b0c45c70a88ed31fb196","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c05fbc40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f8eadc8-ef36-4d30-bfea-48609b51e3f2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.439245} device-1 | {"level":"info","message":"POST /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling 200 11ms","method":"POST","requestID":"c05fbc40-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.90158,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a6c1379d4a83b0c45c70a88ed31fb196"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c060a6a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c060a6a0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c060a6a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.94965,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} device-1 | {"level":"info","message":"POST /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling 200 9ms","method":"POST","requestID":"c060a6a0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a6c1379d4a83b0c45c70a88ed31fb196","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Building connection plan","requestID":"e13b4d927b4f865ec9650905af3a30a3"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6c1379d4a83b0c45c70a88ed31fb196","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"ac9f1742-e14d-4fd2-be20-715fdde138b2"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"a648f37a-a250-4ede-b303-8638792f5007"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"f8ad85ad-4d22-4f31-9234-31393e51a855"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e13b4d927b4f865ec9650905af3a30a3"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e13b4d927b4f865ec9650905af3a30a3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c0627b60-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.062123739Z"}]},"request_id":"dfb3cdbe-e158-4401-8400-be3a3bae40f3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.447883} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6c1379d4a83b0c45c70a88ed31fb196","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.931773,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c0627b60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c0627b60-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a6c1379d4a83b0c45c70a88ed31fb196"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2f7177f1-6464-40d3-8f33-43d024414c44? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a6c1379d4a83b0c45c70a88ed31fb196"} device-1 | {"level":"info","message":"GET /devices/2f7177f1-6464-40d3-8f33-43d024414c44? 200 13ms","method":"GET","requestID":"a6c1379d4a83b0c45c70a88ed31fb196","responseTime":13,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"aea55fd5ca8f483f5932455f5f51d7c8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"aea55fd5ca8f483f5932455f5f51d7c8","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"96c7f0c8-8d89-4602-bf6f-861fbf96e3ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4580145} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aea55fd5ca8f483f5932455f5f51d7c8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d08111c-14e5-426f-a50f-775ba9ff2da3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4581823} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c0627b60-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802226,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"aea55fd5ca8f483f5932455f5f51d7c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aea55fd5ca8f483f5932455f5f51d7c8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:33.114717123Z"}]},"request_id":"ca0526cb-c46e-4501-a7c3-017a52493a8c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.4651022} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"aea55fd5ca8f483f5932455f5f51d7c8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c0627b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c0627b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6'","requestID":"c0627b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6'","requestID":"c0627b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c0627b60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 26ms","method":"POST","requestID":"c0627b60-437c-11ef-8659-f5877ab12720","responseTime":26,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aea55fd5ca8f483f5932455f5f51d7c8"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"aea55fd5ca8f483f5932455f5f51d7c8"} device-1 | {"level":"info","message":"GET /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0? 200 15ms","method":"GET","requestID":"aea55fd5ca8f483f5932455f5f51d7c8","responseTime":15,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c0627b60-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e13b4d927b4f865ec9650905af3a30a3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c06a6aa0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e2bdca3-bf60-4fd9-bde6-9981b27ee2a3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.502187} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.359412,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c06a6aa0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c06a6aa0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c06a6aa0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling 200 8ms","method":"POST","requestID":"c06a6aa0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c06bf140-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"349eedf7-3b78-4710-a331-2dfc79e05e9a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.5132763} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.53431,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c06bf140-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c06bf140-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c06bf140-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling 200 10ms","method":"POST","requestID":"c06bf140-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7977edbd-570a-443a-b1e2-0eda50b2ecb6","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58b4d815b50494a79e0bc857e2ee8277","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"58b4d815b50494a79e0bc857e2ee8277","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6"}}},"level":"info","message":"received a callback","requestID":"58b4d815b50494a79e0bc857e2ee8277"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"58b4d815b50494a79e0bc857e2ee8277","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"58b4d815b50494a79e0bc857e2ee8277"} device-1 | {"data":{"peerconnection":"7977edbd-570a-443a-b1e2-0eda50b2ecb6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"7977edbd-570a-443a-b1e2-0eda50b2ecb6","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7977edbd-570a-443a-b1e2-0eda50b2ecb6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2dab2a57b99ab5c79490b3c90341e605","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"2dab2a57b99ab5c79490b3c90341e605","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6"}}},"level":"info","message":"received a callback","requestID":"2dab2a57b99ab5c79490b3c90341e605"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c076edc0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7977edbd-570a-443a-b1e2-0eda50b2ecb6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7aa9f08-de1f-45df-b0aa-4afba34cf19f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.5844712} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.137013,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c076edc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c076edc0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c076edc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6 200 7ms","method":"GET","requestID":"c076edc0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"2dab2a57b99ab5c79490b3c90341e605","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"2dab2a57b99ab5c79490b3c90341e605"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c07b3380-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36e21e75-f39e-4621-ba12-34dd4e4b6a04","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.6123698} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.800594,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c07b3380-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c07b3380-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c07b3380-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling 200 8ms","method":"POST","requestID":"c07b3380-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c07ce130-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2488ba9e-35c7-43ef-a324-f22cf2951bb0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.622682} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.15938,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c07ce130-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c07ce130-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c07ce130-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling 200 7ms","method":"POST","requestID":"c07ce130-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"4c02ac181c162be35ed9871c31fad3d4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4c02ac181c162be35ed9871c31fad3d4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","requestID":"4c02ac181c162be35ed9871c31fad3d4"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.712529,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4c02ac181c162be35ed9871c31fad3d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c02ac181c162be35ed9871c31fad3d4","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","requestID":"4c02ac181c162be35ed9871c31fad3d4"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c02ac181c162be35ed9871c31fad3d4"} experiment-1 | {"level":"info","message":"GET /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9 200 13ms","method":"GET","requestID":"4c02ac181c162be35ed9871c31fad3d4","responseTime":13,"status":200,"url":"/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"34ca96c37a32f36c1e1d08da44445784"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"34ca96c37a32f36c1e1d08da44445784","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","requestID":"34ca96c37a32f36c1e1d08da44445784"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.812037,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"34ca96c37a32f36c1e1d08da44445784","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34ca96c37a32f36c1e1d08da44445784","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Attempting to finish experiment","requestID":"34ca96c37a32f36c1e1d08da44445784"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c0874170-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.6323,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c0874170-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0874170-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7977edbd-570a-443a-b1e2-0eda50b2ecb6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"779f8445112d0d954a7a37f009fa8420","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"779f8445112d0d954a7a37f009fa8420","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7977edbd-570a-443a-b1e2-0eda50b2ecb6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7977edbd-570a-443a-b1e2-0eda50b2ecb6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"52cda192-78e5-4ad1-8e2a-3212cc29e43c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.7085233} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ece57f4e-d821-4b07-9b56-a9e542af6bdf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.7087579} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6"}}},"level":"info","message":"received a callback","requestID":"779f8445112d0d954a7a37f009fa8420"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d5df322534c81f2284a8978cbbbc7566","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d5df322534c81f2284a8978cbbbc7566","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"c0874170-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6"}}},"level":"info","message":"received a callback","requestID":"d5df322534c81f2284a8978cbbbc7566"} device-1 | {"data":{"peerconnection":"7977edbd-570a-443a-b1e2-0eda50b2ecb6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c0874170-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6 204 39ms","method":"DELETE","requestID":"c0874170-437c-11ef-8659-f5877ab12720","responseTime":39,"status":204,"url":"/peerconnections/7977edbd-570a-443a-b1e2-0eda50b2ecb6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"},"level":"info","message":"Successfully finished experiment","requestID":"34ca96c37a32f36c1e1d08da44445784"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c08fccf0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd71bc576-8a3d-4004-aa81-376c2b96e0b0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f26a6f03-7d38-4813-b029-690edda48c5e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.7480354} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.712321,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c08fccf0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c08fccf0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c08fccf0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling 200 9ms","method":"POST","requestID":"c08fccf0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb4ddcda4-7397-4ab7-a4e5-85d91e9576e9': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb4ddcda4-7397-4ab7-a4e5-85d91e9576e9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"a5b53e3b-59d3-41dc-95f4-3605a9f87321","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.754411} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d8d0700-a89a-4630-9096-b41bf86374b6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.75466} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c091a1b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"34ca96c37a32f36c1e1d08da44445784","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2f7177f1-6464-40d3-8f33-43d024414c44","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c69da4a1-9085-4744-afac-82c06fa09e1f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.7592595} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.639638,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c091a1b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c091a1b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c091a1b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling 200 8ms","method":"POST","requestID":"c091a1b0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/2f7177f1-6464-40d3-8f33-43d024414c44/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9","requestID":"34ca96c37a32f36c1e1d08da44445784"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34ca96c37a32f36c1e1d08da44445784"} experiment-1 | {"level":"info","message":"DELETE /experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9 204 143ms","method":"DELETE","requestID":"34ca96c37a32f36c1e1d08da44445784","responseTime":143,"status":204,"url":"/experiments/b4ddcda4-7397-4ab7-a4e5-85d91e9576e9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"779f8445112d0d954a7a37f009fa8420","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"779f8445112d0d954a7a37f009fa8420"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"d5df322534c81f2284a8978cbbbc7566","responseTime":112,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"d5df322534c81f2284a8978cbbbc7566"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"ba9ba4083187a70b482b999243b0d4bd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ba9ba4083187a70b482b999243b0d4bd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ba9ba4083187a70b482b999243b0d4bd"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2848","request_time":"0.623","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"161e4cc2af6fd1d425d76611ab1fa3d4"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2850","request_time":"0.637","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a8d5cad7f602f07156bd672dc8b013be"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.877249,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ba9ba4083187a70b482b999243b0d4bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ba9ba4083187a70b482b999243b0d4bd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2f7177f1-6464-40d3-8f33-43d024414c44' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d71bc576-8a3d-4004-aa81-376c2b96e0b0' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"15b7f974-6c9f-4abe-affa-ea45454aa0e0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.8480673} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba9ba4083187a70b482b999243b0d4bd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36620bc2-c363-4160-9430-ea7985a1659d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.8526216} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ba9ba4083187a70b482b999243b0d4bd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a2215651-dd7c-4e1e-a84f-95d0d52407f4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.8628647} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a606309-34c8-4298-965d-241f4ff317fa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.8631139} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ba9ba4083187a70b482b999243b0d4bd","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.862843382Z"}]},"request_id":"dfefea11-2307-4152-8602-53a5844c00c7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.8671775} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ba9ba4083187a70b482b999243b0d4bd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ba9ba4083187a70b482b999243b0d4bd"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba9ba4083187a70b482b999243b0d4bd"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"ba9ba4083187a70b482b999243b0d4bd","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo","level":"info","message":"auth send jwt","requestID":"e568b7e814f0f67e796c1c6cea6953cd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e568b7e814f0f67e796c1c6cea6953cd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e568b7e814f0f67e796c1c6cea6953cd"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.717857,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e568b7e814f0f67e796c1c6cea6953cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138855,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1NX0.kJfAHemv0wW-uGayDbwOFzKUV-sLziniAL8aZmpCtfo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e568b7e814f0f67e796c1c6cea6953cd","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0da0e756-6b8a-4780-8b4d-b060ba5804b6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.888573} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e568b7e814f0f67e796c1c6cea6953cd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ec572ad-41eb-4ef3-a0e7-97b533af1742","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.8932827} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e568b7e814f0f67e796c1c6cea6953cd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"4adcc954-a8cb-4e50-a10a-865b7a70ece5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.9079535} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e9fc554-5351-4c57-b0c1-c0caeab525af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.908066} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e568b7e814f0f67e796c1c6cea6953cd","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.907932792Z"}]},"request_id":"1daca908-4a71-4e1a-b408-0a87f14c5c05","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138855.9124718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e568b7e814f0f67e796c1c6cea6953cd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e568b7e814f0f67e796c1c6cea6953cd"} gateway-1 | {"time_local":"16/Jul/2024:14:07:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e568b7e814f0f67e796c1c6cea6953cd"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"e568b7e814f0f67e796c1c6cea6953cd","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e0663c86e086b7d51d4721cb5e99414","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9e0663c86e086b7d51d4721cb5e99414","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"780a33df343d47ff832f6cb6b01ab0cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} gateway-1 | {"time_local":"16/Jul/2024:14:07:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/647e6ae9-43a0-461c-af71-97220908199b/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9e0663c86e086b7d51d4721cb5e99414"} device-1 | {"level":"info","message":"OPTIONS /devices/647e6ae9-43a0-461c-af71-97220908199b/websocket 200 1ms","method":"OPTIONS","requestID":"9e0663c86e086b7d51d4721cb5e99414","responseTime":1,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"780a33df343d47ff832f6cb6b01ab0cd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/53a1229b-f527-4765-8440-a16b6e41bf41/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"780a33df343d47ff832f6cb6b01ab0cd"} device-1 | {"level":"info","message":"OPTIONS /devices/53a1229b-f527-4765-8440-a16b6e41bf41/websocket 200 1ms","method":"OPTIONS","requestID":"780a33df343d47ff832f6cb6b01ab0cd","responseTime":1,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU","level":"info","message":"auth send jwt","requestID":"72444d88f437f23c1984eeae57348d45"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"72444d88f437f23c1984eeae57348d45","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"72444d88f437f23c1984eeae57348d45"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU","level":"info","message":"auth send jwt","requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.644144,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"72444d88f437f23c1984eeae57348d45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"72444d88f437f23c1984eeae57348d45","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.607375,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0"} gateway-1 | {"time_local":"16/Jul/2024:14:07:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/53a1229b-f527-4765-8440-a16b6e41bf41/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0"} device-1 | {"level":"info","message":"POST /devices/53a1229b-f527-4765-8440-a16b6e41bf41/websocket 200 12ms","method":"POST","requestID":"d8f837d8ee8fba445d4ebcde2fccc3f0","responseTime":12,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"72444d88f437f23c1984eeae57348d45"} gateway-1 | {"time_local":"16/Jul/2024:14:07:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/647e6ae9-43a0-461c-af71-97220908199b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.035","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"72444d88f437f23c1984eeae57348d45"} device-1 | {"level":"info","message":"POST /devices/647e6ae9-43a0-461c-af71-97220908199b/websocket 200 26ms","method":"POST","requestID":"72444d88f437f23c1984eeae57348d45","responseTime":26,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU","level":"info","message":"auth send jwt","requestID":"4998e954255980a30095a1889e41a17c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4998e954255980a30095a1889e41a17c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4998e954255980a30095a1889e41a17c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234706,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4998e954255980a30095a1889e41a17c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4998e954255980a30095a1889e41a17c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.862843382Z"}]},"request_id":"ec51f5d5-cac3-4ed2-8211-9a96af6cc6d5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138857.9159935} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4998e954255980a30095a1889e41a17c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4998e954255980a30095a1889e41a17c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/53a1229b-f527-4765-8440-a16b6e41bf41? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4998e954255980a30095a1889e41a17c"} device-1 | {"level":"info","message":"GET /devices/53a1229b-f527-4765-8440-a16b6e41bf41? 200 17ms","method":"GET","requestID":"4998e954255980a30095a1889e41a17c","responseTime":17,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU","level":"info","message":"auth send jwt","requestID":"6d529e31b1edd2dcc15edb596144c2de"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6d529e31b1edd2dcc15edb596144c2de","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d529e31b1edd2dcc15edb596144c2de"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.810825,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6d529e31b1edd2dcc15edb596144c2de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d529e31b1edd2dcc15edb596144c2de","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.907932792Z"}]},"request_id":"175c2263-4e9a-4114-baa2-768206c3efc0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138857.9437973} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d529e31b1edd2dcc15edb596144c2de","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d529e31b1edd2dcc15edb596144c2de"} device-1 | {"level":"info","message":"GET /devices/647e6ae9-43a0-461c-af71-97220908199b? 200 19ms","method":"GET","requestID":"6d529e31b1edd2dcc15edb596144c2de","responseTime":19,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/647e6ae9-43a0-461c-af71-97220908199b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d529e31b1edd2dcc15edb596144c2de"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU","level":"info","message":"auth send jwt","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.197916,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d00f9b8b4213111100a4a72e2eb3a8f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Attempting to run experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Attempting to book experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully booked experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1e809f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1e83100-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.08149,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1e809f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1e809f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.461807,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1e83100-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1e83100-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.862843382Z"}]},"request_id":"a712429a-f228-40dc-986a-e185c6c01a3b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.0084753} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c1e809f0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.907932792Z"}]},"request_id":"6f658df4-2535-4503-b386-497cf1fc4d7a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.0106988} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c1e83100-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1e809f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/53a1229b-f527-4765-8440-a16b6e41bf41? 200 16ms","method":"GET","requestID":"c1e809f0-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1e83100-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/647e6ae9-43a0-461c-af71-97220908199b? 200 15ms","method":"GET","requestID":"c1e83100-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Setting up experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully set up experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1f1a6e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c1f1f500-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1f21c10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.69759,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully running experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1f1a6e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1f1a6e0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047598,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1f1f500-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1f1f500-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.908328,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac3aa87d-c41f-444b-bf7c-d2dd65ea3598","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.071982} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.862843382Z"}]},"request_id":"f680fe76-37ab-47d9-b98c-7945c2f831a1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.0750885} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1f21c10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"c1f21c10-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.907932792Z"}]},"request_id":"17910850-0da0-4ba1-94d2-0131065aca4c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.0764155} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"c1f1a6e0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c1f1f500-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1f21c10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling 200 20ms","method":"POST","requestID":"c1f21c10-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1f1a6e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/53a1229b-f527-4765-8440-a16b6e41bf41? 200 25ms","method":"GET","requestID":"c1f1a6e0-437c-11ef-8659-f5877ab12720","responseTime":25,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c1f1f500-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/647e6ae9-43a0-461c-af71-97220908199b? 200 23ms","method":"GET","requestID":"c1f1f500-437c-11ef-8659-f5877ab12720","responseTime":23,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1f59e80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1f5c590-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.638099,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e86c5d5-ec3d-4076-aebc-3e1183158cc5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.0925777} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f9f1447-2faa-4643-bbdd-873f55ca1d43#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f9f1447-2faa-4643-bbdd-873f55ca1d43","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"c91ef0be-65e9-4e77-8e8b-0496be225134","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.0926952} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50f2c5aa-83f4-4c2c-868f-8a7b274a39a0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.0939133} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1f59e80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c1f59e80-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.389817,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85f4d9e6-83fb-483d-b02c-18cf43eddfdb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.095438} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1f5c590-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1f5c590-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1f59e80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/647e6ae9-43a0-461c-af71-97220908199b/signaling 200 11ms","method":"POST","requestID":"c1f59e80-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1f5c590-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling 200 11ms","method":"POST","requestID":"c1f5c590-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c1f7e870-437c-11ef-8659-f5877ab12720"} experiment-1 | {"level":"info","message":"POST /experiments? 201 147ms","method":"POST","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1","responseTime":147,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1305196f-d5ac-4a4b-89ee-ffac46b631f6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.1073525} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg","level":"info","message":"auth send jwt","requestID":"33f514d8cdf10bd902ab67a506e0e8f3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.342219,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"33f514d8cdf10bd902ab67a506e0e8f3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1f7e870-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33f514d8cdf10bd902ab67a506e0e8f3"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c1f7e870-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.882704,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c1f7e870-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/647e6ae9-43a0-461c-af71-97220908199b/signaling 200 9ms","method":"POST","requestID":"c1f7e870-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"33f514d8cdf10bd902ab67a506e0e8f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138858,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"33f514d8cdf10bd902ab67a506e0e8f3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Building connection plan","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"7bcb40ba-2bde-49cc-be6a-aa47692bcf7e"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"99578111-5e42-4376-a4dd-47c3ce3e0b08"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"80aed2fc-8038-4c35-b6e9-95c25b327896"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c1f99620-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.862843382Z"}]},"request_id":"e0b0ac80-2ecd-444d-9e0a-a81652e9b05d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.1160507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33f514d8cdf10bd902ab67a506e0e8f3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.460928,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c1f99620-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138857,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1N30.b1jC6LMvRyhoVahftxIYc5rtew7UU6WKKDu-X3Wp4CU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c1f99620-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33f514d8cdf10bd902ab67a506e0e8f3"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/53a1229b-f527-4765-8440-a16b6e41bf41? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"33f514d8cdf10bd902ab67a506e0e8f3"} device-1 | {"level":"info","message":"GET /devices/53a1229b-f527-4765-8440-a16b6e41bf41? 200 13ms","method":"GET","requestID":"33f514d8cdf10bd902ab67a506e0e8f3","responseTime":13,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg","level":"info","message":"auth send jwt","requestID":"caffd7d481e107e4ff87359db576c58d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"caffd7d481e107e4ff87359db576c58d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"caffd7d481e107e4ff87359db576c58d"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"27b05825-ade9-4403-bb2e-465ccee22e85","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.12748} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f549ef2e-8947-481f-a0b3-b6978111e360","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.1282158} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c1f99620-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.624604,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"caffd7d481e107e4ff87359db576c58d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138858,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"caffd7d481e107e4ff87359db576c58d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:35.907932792Z"}]},"request_id":"9c28ddf4-63e9-401a-b5f1-0728c1c4ce12","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.1353762} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"caffd7d481e107e4ff87359db576c58d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c1f99620-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c1f99620-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267'","requestID":"c1f99620-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267'","requestID":"c1f99620-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c1f99620-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"c1f99620-437c-11ef-8659-f5877ab12720","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"caffd7d481e107e4ff87359db576c58d"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/647e6ae9-43a0-461c-af71-97220908199b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"caffd7d481e107e4ff87359db576c58d"} device-1 | {"level":"info","message":"GET /devices/647e6ae9-43a0-461c-af71-97220908199b? 200 21ms","method":"GET","requestID":"caffd7d481e107e4ff87359db576c58d","responseTime":21,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c1f99620-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d00f9b8b4213111100a4a72e2eb3a8f1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c20248b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cc3f7c0-f9c3-458c-917a-1478b6521c93","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.1752636} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.337785,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c20248b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c20248b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c20248b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling 200 8ms","method":"POST","requestID":"c20248b0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c203cf50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"607386a6-f4a4-4d47-a9f9-80818fd1615e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.1853213} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.954042,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c203cf50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c203cf50-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c203cf50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/647e6ae9-43a0-461c-af71-97220908199b/signaling 200 7ms","method":"POST","requestID":"c203cf50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"13ef5700-7a34-41c2-a714-0844ba86d267","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"332ece0bfd8cb0e4df288a727296059b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"332ece0bfd8cb0e4df288a727296059b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267"}}},"level":"info","message":"received a callback","requestID":"332ece0bfd8cb0e4df288a727296059b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"332ece0bfd8cb0e4df288a727296059b","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"332ece0bfd8cb0e4df288a727296059b"} device-1 | {"data":{"peerconnection":"13ef5700-7a34-41c2-a714-0844ba86d267","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"13ef5700-7a34-41c2-a714-0844ba86d267","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"13ef5700-7a34-41c2-a714-0844ba86d267","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89e00a8fc4c99215de06d048eebbd9dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"89e00a8fc4c99215de06d048eebbd9dc","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267"}}},"level":"info","message":"received a callback","requestID":"89e00a8fc4c99215de06d048eebbd9dc"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c2107980-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F13ef5700-7a34-41c2-a714-0844ba86d267","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf0f957d-7511-4700-8d4a-c3c7b5c4488d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.2678978} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.018204,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c2107980-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c2107980-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c2107980-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267 200 7ms","method":"GET","requestID":"c2107980-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"89e00a8fc4c99215de06d048eebbd9dc","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"89e00a8fc4c99215de06d048eebbd9dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c2149830-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a746282b-9d80-459a-86c7-2beec5d65c5a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.2948399} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.118539,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c2149830-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c2149830-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c2149830-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/647e6ae9-43a0-461c-af71-97220908199b/signaling 200 7ms","method":"POST","requestID":"c2149830-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c215f7c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e020b8e-a8fc-4f46-8925-cf7c0f0f1416","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.303949} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.044584,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c215f7c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c215f7c0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c215f7c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling 200 7ms","method":"POST","requestID":"c215f7c0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg","level":"info","message":"auth send jwt","requestID":"484869af8b67407b50b0eb30e5695fc9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"484869af8b67407b50b0eb30e5695fc9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","requestID":"484869af8b67407b50b0eb30e5695fc9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.666053,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"484869af8b67407b50b0eb30e5695fc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138858,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"484869af8b67407b50b0eb30e5695fc9","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","requestID":"484869af8b67407b50b0eb30e5695fc9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"484869af8b67407b50b0eb30e5695fc9"} experiment-1 | {"level":"info","message":"GET /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43 200 12ms","method":"GET","requestID":"484869af8b67407b50b0eb30e5695fc9","responseTime":12,"status":200,"url":"/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg","level":"info","message":"auth send jwt","requestID":"704ba96f0d7f1b58fb969e58aa838760"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"704ba96f0d7f1b58fb969e58aa838760","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","requestID":"704ba96f0d7f1b58fb969e58aa838760"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.057576,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"704ba96f0d7f1b58fb969e58aa838760","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138858,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"704ba96f0d7f1b58fb969e58aa838760","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Attempting to finish experiment","requestID":"704ba96f0d7f1b58fb969e58aa838760"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c221b790-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.630972,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c221b790-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138858,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c221b790-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"13ef5700-7a34-41c2-a714-0844ba86d267","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F13ef5700-7a34-41c2-a714-0844ba86d267': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F13ef5700-7a34-41c2-a714-0844ba86d267","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"cdb09a32-4c77-4a0a-ae9d-e95eae38abcf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.3969963} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c83343aeff63f1e65cfcdefcd9ac0a5a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c83343aeff63f1e65cfcdefcd9ac0a5a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51299277-6c4b-4f53-a62c-28bfb3868840","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.3977454} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8990bcdfc985c45e618ba33ee06a760","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c8990bcdfc985c45e618ba33ee06a760","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"c221b790-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267"}}},"level":"info","message":"received a callback","requestID":"c83343aeff63f1e65cfcdefcd9ac0a5a"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267"}}},"level":"info","message":"received a callback","requestID":"c8990bcdfc985c45e618ba33ee06a760"} device-1 | {"data":{"peerconnection":"13ef5700-7a34-41c2-a714-0844ba86d267","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c221b790-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267 204 43ms","method":"DELETE","requestID":"c221b790-437c-11ef-8659-f5877ab12720","responseTime":43,"status":204,"url":"/peerconnections/13ef5700-7a34-41c2-a714-0844ba86d267"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"},"level":"info","message":"Successfully finished experiment","requestID":"704ba96f0d7f1b58fb969e58aa838760"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c22bc9b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F647e6ae9-43a0-461c-af71-97220908199b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a81bb89f-aa88-4b3d-9519-a053b545c86e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.450013} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.580126,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c22bc9b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c22bc9b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c22bc9b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/647e6ae9-43a0-461c-af71-97220908199b/signaling 200 11ms","method":"POST","requestID":"c22bc9b0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/647e6ae9-43a0-461c-af71-97220908199b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c22dc580-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f9f1447-2faa-4643-bbdd-873f55ca1d43': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f9f1447-2faa-4643-bbdd-873f55ca1d43","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"efe6bee8-b548-4ae9-9a9a-9099d39a0f11","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.4571414} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf1527c8-e2f9-4536-a11b-c02e9435c991","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.4573565} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"704ba96f0d7f1b58fb969e58aa838760","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F53a1229b-f527-4765-8440-a16b6e41bf41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cfc4692-acf4-40e4-9d05-73872c70f68a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.4646525} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.158878,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c22dc580-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c22dc580-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c22dc580-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling 200 13ms","method":"POST","requestID":"c22dc580-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/53a1229b-f527-4765-8440-a16b6e41bf41/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43","requestID":"704ba96f0d7f1b58fb969e58aa838760"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"704ba96f0d7f1b58fb969e58aa838760"} experiment-1 | {"level":"info","message":"DELETE /experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43 204 155ms","method":"DELETE","requestID":"704ba96f0d7f1b58fb969e58aa838760","responseTime":155,"status":204,"url":"/experiments/8f9f1447-2faa-4643-bbdd-873f55ca1d43"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"c83343aeff63f1e65cfcdefcd9ac0a5a","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"c83343aeff63f1e65cfcdefcd9ac0a5a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"c8990bcdfc985c45e618ba33ee06a760","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"c8990bcdfc985c45e618ba33ee06a760"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg","level":"info","message":"auth send jwt","requestID":"49ead3b10753a20795537fe79e817b4d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"49ead3b10753a20795537fe79e817b4d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"49ead3b10753a20795537fe79e817b4d"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2848","request_time":"0.645","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"975d1a2ab5589edd529051bf2427202a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2849","request_time":"0.658","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5ff782498fb6eec04e4afe375d548a81"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.129591,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"49ead3b10753a20795537fe79e817b4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138858,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/53a1229b-f527-4765-8440-a16b6e41bf41' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"49ead3b10753a20795537fe79e817b4d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/647e6ae9-43a0-461c-af71-97220908199b' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"21298fe1-8076-4cb8-9a1b-71aecfc92fab","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.5493534} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49ead3b10753a20795537fe79e817b4d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51809517-e508-4142-a554-4962829c0d18","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.553465} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"49ead3b10753a20795537fe79e817b4d","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"3fd5ee22-e484-45a4-9252-0576fa0376c5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.563648} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2797bb2-d623-4b9a-93c1-1b4271f9beac","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.563781} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"49ead3b10753a20795537fe79e817b4d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.563623664Z"}]},"request_id":"f9efe99f-ec12-4c97-8424-2a2188a05935","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.5681913} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49ead3b10753a20795537fe79e817b4d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"49ead3b10753a20795537fe79e817b4d"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"49ead3b10753a20795537fe79e817b4d","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49ead3b10753a20795537fe79e817b4d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg","level":"info","message":"auth send jwt","requestID":"722d5a9bc93dbfc5aa1a8405b2175252"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"722d5a9bc93dbfc5aa1a8405b2175252","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"722d5a9bc93dbfc5aa1a8405b2175252"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.731266,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"722d5a9bc93dbfc5aa1a8405b2175252","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138858,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OH0.6BdM89QiSW5lfWyC8W2cr41Ghby97gUclwD9A5wadRg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"722d5a9bc93dbfc5aa1a8405b2175252","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0f3a0113-9028-46e9-8d08-074f8733f24b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.5962515} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"722d5a9bc93dbfc5aa1a8405b2175252","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2569cc62-f225-4572-8545-98693a735283","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.6027298} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"722d5a9bc93dbfc5aa1a8405b2175252","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"d4db35eb-3351-4ca2-a36c-1117d419e376","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.6222382} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6489c14a-d1fc-4d75-ba1f-ad08697fcf0d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.6224015} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"722d5a9bc93dbfc5aa1a8405b2175252","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.622216773Z"}]},"request_id":"313c5e7d-7efb-4380-a845-72cf7505d40a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138858.6258373} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"722d5a9bc93dbfc5aa1a8405b2175252","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"722d5a9bc93dbfc5aa1a8405b2175252"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"722d5a9bc93dbfc5aa1a8405b2175252","responseTime":52,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"722d5a9bc93dbfc5aa1a8405b2175252"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OX0.Htvwteb8_T_fwyWLMhOOD1oro7Kmak3a5NiU5TGyCDY","level":"info","message":"auth send jwt","requestID":"94732f61e45dc9703e853c26079b4da2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"94732f61e45dc9703e853c26079b4da2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"94732f61e45dc9703e853c26079b4da2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156494,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"94732f61e45dc9703e853c26079b4da2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138859,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OX0.Htvwteb8_T_fwyWLMhOOD1oro7Kmak3a5NiU5TGyCDY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"94732f61e45dc9703e853c26079b4da2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.622216773Z"}]},"request_id":"7f6bdfd5-f6d8-4fae-9a2c-d70ea998754e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138859.1340742} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94732f61e45dc9703e853c26079b4da2","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a67cc63-149f-4d70-90d0-81a0c9449c8b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138859.1412256} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"94732f61e45dc9703e853c26079b4da2","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.622216773Z"}]},"request_id":"6280beb2-2fc3-4cab-a172-d7b063651e72","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138859.1555476} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"94732f61e45dc9703e853c26079b4da2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"94732f61e45dc9703e853c26079b4da2"} gateway-1 | {"time_local":"16/Jul/2024:14:07:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"94732f61e45dc9703e853c26079b4da2"} device-1 | {"level":"info","message":"PATCH /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa 200 38ms","method":"PATCH","requestID":"94732f61e45dc9703e853c26079b4da2","responseTime":38,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OX0.Htvwteb8_T_fwyWLMhOOD1oro7Kmak3a5NiU5TGyCDY","level":"info","message":"auth send jwt","requestID":"63f7b4952354c553dcabab96f3abfed5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"63f7b4952354c553dcabab96f3abfed5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"63f7b4952354c553dcabab96f3abfed5"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.433968,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"63f7b4952354c553dcabab96f3abfed5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138859,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg1OX0.Htvwteb8_T_fwyWLMhOOD1oro7Kmak3a5NiU5TGyCDY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"63f7b4952354c553dcabab96f3abfed5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"63f7b4952354c553dcabab96f3abfed5"} gateway-1 | {"time_local":"16/Jul/2024:14:07:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"63f7b4952354c553dcabab96f3abfed5"} device-1 | {"level":"info","message":"POST /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/websocket 200 20ms","method":"POST","requestID":"63f7b4952354c553dcabab96f3abfed5","responseTime":20,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26bc6787b98241112b9d1ddd8ffe788c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"26bc6787b98241112b9d1ddd8ffe788c","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"26bc6787b98241112b9d1ddd8ffe788c"} device-1 | {"level":"info","message":"OPTIONS /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/websocket 200 1ms","method":"OPTIONS","requestID":"26bc6787b98241112b9d1ddd8ffe788c","responseTime":1,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI","level":"info","message":"auth send jwt","requestID":"4d6ab86eede08eecbcbeaabe171c7498"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4d6ab86eede08eecbcbeaabe171c7498","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4d6ab86eede08eecbcbeaabe171c7498"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.213238,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4d6ab86eede08eecbcbeaabe171c7498","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d6ab86eede08eecbcbeaabe171c7498","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4d6ab86eede08eecbcbeaabe171c7498"} device-1 | {"level":"info","message":"POST /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/websocket 200 23ms","method":"POST","requestID":"4d6ab86eede08eecbcbeaabe171c7498","responseTime":23,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4d6ab86eede08eecbcbeaabe171c7498"} device-1 | {"level":"info","message":"device 'http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI","level":"info","message":"auth send jwt","requestID":"9298e4891eb4693df582a1c64a234ec9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9298e4891eb4693df582a1c64a234ec9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9298e4891eb4693df582a1c64a234ec9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.328034,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9298e4891eb4693df582a1c64a234ec9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9298e4891eb4693df582a1c64a234ec9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.563623664Z"}]},"request_id":"22487c4d-73e2-48e1-91e2-48dfe1e6a6d3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.6739507} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9298e4891eb4693df582a1c64a234ec9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9298e4891eb4693df582a1c64a234ec9"} device-1 | {"level":"info","message":"GET /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4? 200 18ms","method":"GET","requestID":"9298e4891eb4693df582a1c64a234ec9","responseTime":18,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9298e4891eb4693df582a1c64a234ec9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI","level":"info","message":"auth send jwt","requestID":"a24d2f0cabf73205bf1cd06ad2028236"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a24d2f0cabf73205bf1cd06ad2028236","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a24d2f0cabf73205bf1cd06ad2028236"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.281317,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a24d2f0cabf73205bf1cd06ad2028236","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a24d2f0cabf73205bf1cd06ad2028236","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.622216773Z"}]},"request_id":"50b1fa62-bc84-4d3a-a590-df4267bd21bf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.7003949} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a24d2f0cabf73205bf1cd06ad2028236","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a24d2f0cabf73205bf1cd06ad2028236"} device-1 | {"level":"info","message":"GET /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa? 200 18ms","method":"GET","requestID":"a24d2f0cabf73205bf1cd06ad2028236","responseTime":18,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a24d2f0cabf73205bf1cd06ad2028236"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI","level":"info","message":"auth send jwt","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.303832,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Attempting to run experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Attempting to book experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully booked experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c38d5580-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c38d7c90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.262349,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c38d5580-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c38d5580-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.342984,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c38d7c90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c38d7c90-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.563623664Z"}]},"request_id":"f1106400-c59c-42a3-b187-71d7f790d503","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.7731512} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c38d5580-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.622216773Z"}]},"request_id":"850edad8-dff3-48cc-ad89-4616e9d08bd6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.7748396} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c38d7c90-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c38d5580-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4? 200 22ms","method":"GET","requestID":"c38d5580-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c38d7c90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa? 200 22ms","method":"GET","requestID":"c38d7c90-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Setting up experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully set up experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c3982af0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c3987910-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c398c730-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully running experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.322743,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c3982af0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c3982af0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878774,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c3987910-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c3987910-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.563623664Z"}]},"request_id":"fdbc83fe-c85d-466d-a7ed-ea66c87a8c1c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.8465989} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c3982af0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.622216773Z"}]},"request_id":"e64ae92a-efc2-4c0b-8348-caae72e825b1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.8483696} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c3987910-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:42074","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6334ec7-ff21-4741-990a-2e42d06a4120","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.852404} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c3982af0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:42074","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.1259,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} device-1 | {"level":"info","message":"GET /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4? 200 22ms","method":"GET","requestID":"c3982af0-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c398c730-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"c398c730-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c3987910-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa? 200 22ms","method":"GET","requestID":"c3987910-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c39c2290-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c398c730-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling 200 25ms","method":"POST","requestID":"c398c730-437c-11ef-8659-f5877ab12720","responseTime":25,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c39d0cf0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9e654f2-048d-41d8-a82f-e912fce47290","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.8640442} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F24493f10-d378-4fa3-a102-76e798283fa5#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F24493f10-d378-4fa3-a102-76e798283fa5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"1d92f0e4-6fb6-4d92-a082-e2038c2a992f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.8640397} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ae2fc468-4e35-4f33-95fc-4418c0f1ea51","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.864303} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.421901,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c39c2290-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c39c2290-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ce41800-9783-4b41-baee-331273d34eaf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.8683348} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.904691,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c39c2290-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c39d0cf0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling 200 13ms","method":"POST","requestID":"c39c2290-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c39d0cf0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c39e6c80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c39d0cf0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling 200 12ms","method":"POST","requestID":"c39d0cf0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 162ms","method":"POST","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9","responseTime":162,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f454798b-02d9-4190-bac9-cd7f893de7d1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.877845} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.026754,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c39e6c80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c39e6c80-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI","level":"info","message":"auth send jwt","requestID":"16026d7f21781574d2d520079c3607b1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"16026d7f21781574d2d520079c3607b1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c39e6c80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling 200 10ms","method":"POST","requestID":"c39e6c80-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16026d7f21781574d2d520079c3607b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Building connection plan","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"8a72cd0a-5dab-4f2e-a22f-1a6170bc5ecb"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"6a0fe15a-4f6c-41f4-9e39-e9e5f34f6f52"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"605b56f5-50de-437d-b631-8daeb5e5e2e5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c3a06850-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.751553,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"16026d7f21781574d2d520079c3607b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"16026d7f21781574d2d520079c3607b1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.559351,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c3a06850-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c3a06850-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.563623664Z"}]},"request_id":"c95ed6eb-9bdf-403a-b8cd-d955e8fc97b7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.8896875} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16026d7f21781574d2d520079c3607b1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16026d7f21781574d2d520079c3607b1"} gateway-1 | {"time_local":"16/Jul/2024:14:07:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"16026d7f21781574d2d520079c3607b1"} device-1 | {"level":"info","message":"GET /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4? 200 11ms","method":"GET","requestID":"16026d7f21781574d2d520079c3607b1","responseTime":11,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI","level":"info","message":"auth send jwt","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"19c73521-27c4-4003-8944-ba43572525aa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.8993382} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12683f07-f8bd-4f6b-a491-48280f9ae4ed","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.899632} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c3a06850-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738083,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ea4e0bbffc74c7a628e9d7e245d277f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138860,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2MH0.kDyVeiM-az-7uqVvVNaB2rw6PIWCph6uRJ_WseiZdRI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:38.622216773Z"}]},"request_id":"15c67a31-9dd1-4a1d-bea7-b99ee8987e08","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.9060647} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c3a06850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c3a06850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832'","requestID":"c3a06850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832'","requestID":"c3a06850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c3a06850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"c3a06850-437c-11ef-8659-f5877ab12720","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6"} device-1 | {"level":"info","message":"GET /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa? 200 19ms","method":"GET","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6","responseTime":19,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea4e0bbffc74c7a628e9d7e245d277f6"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c3a06850-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0fc7e6ea1abe922e1ae1ac1dda1408a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3a941f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc354d6c-1db6-48dd-abdc-c63d13c0cb23","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.9476295} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.40782,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c3a941f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3a941f0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3a941f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling 200 8ms","method":"POST","requestID":"c3a941f0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c3aac890-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2c9e0ed-6d71-4c68-b067-6987a38db087","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138860.9574387} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.634204,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c3aac890-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3aac890-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c3aac890-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling 200 8ms","method":"POST","requestID":"c3aac890-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling"} device-1 | {"data":{"peerconnection":"40f38abe-be7e-4c5e-a79c-a1a74a24e832","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"40f38abe-be7e-4c5e-a79c-a1a74a24e832","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1f783897e674b715829e3de7c1309da","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a1f783897e674b715829e3de7c1309da","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832"}}},"level":"info","message":"received a callback","requestID":"a1f783897e674b715829e3de7c1309da"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"a1f783897e674b715829e3de7c1309da","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"a1f783897e674b715829e3de7c1309da"} device-1 | {"data":{"peerconnection":"40f38abe-be7e-4c5e-a79c-a1a74a24e832","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"40f38abe-be7e-4c5e-a79c-a1a74a24e832","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"40f38abe-be7e-4c5e-a79c-a1a74a24e832","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"116d30cbd2a1529a52536b5c91996054","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"116d30cbd2a1529a52536b5c91996054","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832"}}},"level":"info","message":"received a callback","requestID":"116d30cbd2a1529a52536b5c91996054"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c4e96310-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F40f38abe-be7e-4c5e-a79c-a1a74a24e832","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3a5c5338-75b1-402a-aa47-b2e714f0f855","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.0483196} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.655531,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c4e96310-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c4e96310-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c4e96310-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832 200 13ms","method":"GET","requestID":"c4e96310-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"116d30cbd2a1529a52536b5c91996054","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"116d30cbd2a1529a52536b5c91996054"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4ef7d90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1eaa478d-17fb-48cc-973a-5cd05f98ccfb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.087614} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.000967,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c4ef7d90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c4ef7d90-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4ef7d90-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling 200 12ms","method":"POST","requestID":"c4ef7d90-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c4f1a070-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4edd838-588a-4d4b-8130-3f6e367fc560","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.101282} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.910856,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c4f1a070-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c4f1a070-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c4f1a070-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling 200 12ms","method":"POST","requestID":"c4f1a070-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8","level":"info","message":"auth send jwt","requestID":"6a9f5f386d6d6e7e92b20ebe0691d185"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6a9f5f386d6d6e7e92b20ebe0691d185","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/24493f10-d378-4fa3-a102-76e798283fa5","requestID":"6a9f5f386d6d6e7e92b20ebe0691d185"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.233269,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6a9f5f386d6d6e7e92b20ebe0691d185","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138863,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a9f5f386d6d6e7e92b20ebe0691d185","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/24493f10-d378-4fa3-a102-76e798283fa5","requestID":"6a9f5f386d6d6e7e92b20ebe0691d185"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/24493f10-d378-4fa3-a102-76e798283fa5 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6a9f5f386d6d6e7e92b20ebe0691d185"} experiment-1 | {"level":"info","message":"GET /experiments/24493f10-d378-4fa3-a102-76e798283fa5 200 14ms","method":"GET","requestID":"6a9f5f386d6d6e7e92b20ebe0691d185","responseTime":14,"status":200,"url":"/experiments/24493f10-d378-4fa3-a102-76e798283fa5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8","level":"info","message":"auth send jwt","requestID":"198c3db09e40dfd05641e77d4194ab62"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"198c3db09e40dfd05641e77d4194ab62","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/24493f10-d378-4fa3-a102-76e798283fa5","requestID":"198c3db09e40dfd05641e77d4194ab62"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.485911,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"198c3db09e40dfd05641e77d4194ab62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138863,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"198c3db09e40dfd05641e77d4194ab62","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Attempting to finish experiment","requestID":"198c3db09e40dfd05641e77d4194ab62"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c4fdd570-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.231372,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c4fdd570-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138863,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c4fdd570-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"40f38abe-be7e-4c5e-a79c-a1a74a24e832","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F40f38abe-be7e-4c5e-a79c-a1a74a24e832': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F40f38abe-be7e-4c5e-a79c-a1a74a24e832","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"48a3d224-da98-4ebd-bb7e-4aab1868c220","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.200136} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef4b3df0970cb2c3dfbb2a7a818b0382","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ef4b3df0970cb2c3dfbb2a7a818b0382","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1387c81-a2de-47eb-809f-4093191700a2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.2008533} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832"}}},"level":"info","message":"received a callback","requestID":"ef4b3df0970cb2c3dfbb2a7a818b0382"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6a771138f0dd8dbe9cd21831806db1ab","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c4fdd570-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6a771138f0dd8dbe9cd21831806db1ab","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832"}}},"level":"info","message":"received a callback","requestID":"6a771138f0dd8dbe9cd21831806db1ab"} device-1 | {"data":{"peerconnection":"40f38abe-be7e-4c5e-a79c-a1a74a24e832","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c4fdd570-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832 204 50ms","method":"DELETE","requestID":"c4fdd570-437c-11ef-8659-f5877ab12720","responseTime":50,"status":204,"url":"/peerconnections/40f38abe-be7e-4c5e-a79c-a1a74a24e832"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/24493f10-d378-4fa3-a102-76e798283fa5"},"level":"info","message":"Successfully finished experiment","requestID":"198c3db09e40dfd05641e77d4194ab62"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c508f900-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F67e2f19c-76e7-47d7-a9f8-11dad91b10d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"77d8e560-e630-4f6a-b7fc-e17613e6fdd9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.255073} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.079713,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c508f900-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c508f900-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c508f900-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling 200 13ms","method":"POST","requestID":"c508f900-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F24493f10-d378-4fa3-a102-76e798283fa5': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F24493f10-d378-4fa3-a102-76e798283fa5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"bd0b2c9f-6c90-476b-b7cd-ae29cbdfed6c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.262909} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5af9194f-aadd-44bc-91a5-7aa546472d27","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.2633104} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c50b9110-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"198c3db09e40dfd05641e77d4194ab62","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F962c8b30-ad5f-4957-b3cf-530e942e8eaa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75af30b7-3290-4627-b48e-017596c0aa48","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.271536} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.866171,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c50b9110-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c50b9110-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c50b9110-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling 200 13ms","method":"POST","requestID":"c50b9110-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/24493f10-d378-4fa3-a102-76e798283fa5","requestID":"198c3db09e40dfd05641e77d4194ab62"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/24493f10-d378-4fa3-a102-76e798283fa5 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.184","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"198c3db09e40dfd05641e77d4194ab62"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2798","request_time":"4.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8805a638e14eae99baa8e37b3c1ab417"} experiment-1 | {"level":"info","message":"DELETE /experiments/24493f10-d378-4fa3-a102-76e798283fa5 204 180ms","method":"DELETE","requestID":"198c3db09e40dfd05641e77d4194ab62","responseTime":180,"status":204,"url":"/experiments/24493f10-d378-4fa3-a102-76e798283fa5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"ef4b3df0970cb2c3dfbb2a7a818b0382","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"ef4b3df0970cb2c3dfbb2a7a818b0382"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"6a771138f0dd8dbe9cd21831806db1ab","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"6a771138f0dd8dbe9cd21831806db1ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8","level":"info","message":"auth send jwt","requestID":"a254f3a40421818e0dcaf49451b12578"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a254f3a40421818e0dcaf49451b12578","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a254f3a40421818e0dcaf49451b12578"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.713","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"96f5c9ff742296275f5465635255e571"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.800671,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a254f3a40421818e0dcaf49451b12578","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138863,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a254f3a40421818e0dcaf49451b12578","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/962c8b30-ad5f-4957-b3cf-530e942e8eaa' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c96c9f99-91eb-48b4-a644-24786bc3453c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.3665628} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a254f3a40421818e0dcaf49451b12578","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/67e2f19c-76e7-47d7-a9f8-11dad91b10d4' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"502a0628-3168-416e-9736-dd0f9c31ba54","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.3716156} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a254f3a40421818e0dcaf49451b12578","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"0cb3744b-907d-496f-80fb-b89df958b9f6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.3817806} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ccee5c4-31fd-48b2-a6ca-7dd5d06f6334","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.3820221} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a254f3a40421818e0dcaf49451b12578","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.381746605Z"}]},"request_id":"4c4a7241-baab-4389-b50f-c0ac13fb90f2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.3864486} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a254f3a40421818e0dcaf49451b12578","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a254f3a40421818e0dcaf49451b12578"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a254f3a40421818e0dcaf49451b12578"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"a254f3a40421818e0dcaf49451b12578","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8","level":"info","message":"auth send jwt","requestID":"319ffbf0b0126b9872f6acd93ef079ef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"319ffbf0b0126b9872f6acd93ef079ef","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"319ffbf0b0126b9872f6acd93ef079ef"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.800219,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"319ffbf0b0126b9872f6acd93ef079ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138863,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"319ffbf0b0126b9872f6acd93ef079ef","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dbb8ea43-1fc9-4108-b41d-e053395adec8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.4162183} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"319ffbf0b0126b9872f6acd93ef079ef","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"06fbdde4-a10e-46d6-8081-f2c3221fe282","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.4207544} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"319ffbf0b0126b9872f6acd93ef079ef","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"bb446431-944b-476f-926b-87539216c42f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.4314322} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e1d08850-ed26-4963-9601-2785c56c1ec3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.4315464} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"319ffbf0b0126b9872f6acd93ef079ef","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.431405855Z"}]},"request_id":"6d7299a5-31e9-4b29-b6d6-bc967e95456e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.4354246} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"319ffbf0b0126b9872f6acd93ef079ef","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"319ffbf0b0126b9872f6acd93ef079ef"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"319ffbf0b0126b9872f6acd93ef079ef","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"319ffbf0b0126b9872f6acd93ef079ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8","level":"info","message":"auth send jwt","requestID":"e85c144dbb0002caee71ec8573ba7ed7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e85c144dbb0002caee71ec8573ba7ed7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e85c144dbb0002caee71ec8573ba7ed7"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865648,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e85c144dbb0002caee71ec8573ba7ed7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138863,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e85c144dbb0002caee71ec8573ba7ed7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.431405855Z"}]},"request_id":"a4d0eaca-5073-4513-800c-8ab96039ec3e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.931315} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e85c144dbb0002caee71ec8573ba7ed7","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67a1259a-9e44-413d-8fe4-0ebef262fc05","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.9357448} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e85c144dbb0002caee71ec8573ba7ed7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.431405855Z"}]},"request_id":"7ac74819-1a4a-40ef-a9fa-00a082b95cd3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138863.9489996} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e85c144dbb0002caee71ec8573ba7ed7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e85c144dbb0002caee71ec8573ba7ed7"} device-1 | {"level":"info","message":"PATCH /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac 200 34ms","method":"PATCH","requestID":"e85c144dbb0002caee71ec8573ba7ed7","responseTime":34,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e85c144dbb0002caee71ec8573ba7ed7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8","level":"info","message":"auth send jwt","requestID":"2a9e054ac7394c5f7e531eb74ce6ceed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2a9e054ac7394c5f7e531eb74ce6ceed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2a9e054ac7394c5f7e531eb74ce6ceed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220082,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2a9e054ac7394c5f7e531eb74ce6ceed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138863,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2M30.sSPQZIU0FCXINwEqD69afFzwjV7QFFOUaLjxOJGXQI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"2a9e054ac7394c5f7e531eb74ce6ceed","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2a9e054ac7394c5f7e531eb74ce6ceed"} device-1 | {"level":"info","message":"POST /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/websocket 200 25ms","method":"POST","requestID":"2a9e054ac7394c5f7e531eb74ce6ceed","responseTime":25,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2a9e054ac7394c5f7e531eb74ce6ceed"} device-1 | {"level":"info","message":"device 'http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e6d400c8ce6c75700d31896d3d26904","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2e6d400c8ce6c75700d31896d3d26904","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e591984f-2984-464c-af35-ed84f1870c33/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2e6d400c8ce6c75700d31896d3d26904"} device-1 | {"level":"info","message":"OPTIONS /devices/e591984f-2984-464c-af35-ed84f1870c33/websocket 200 1ms","method":"OPTIONS","requestID":"2e6d400c8ce6c75700d31896d3d26904","responseTime":1,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw","level":"info","message":"auth send jwt","requestID":"24da491b570c555d3e8ceccf7639f75c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"24da491b570c555d3e8ceccf7639f75c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"24da491b570c555d3e8ceccf7639f75c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288616,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"24da491b570c555d3e8ceccf7639f75c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"24da491b570c555d3e8ceccf7639f75c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"24da491b570c555d3e8ceccf7639f75c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e591984f-2984-464c-af35-ed84f1870c33/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"24da491b570c555d3e8ceccf7639f75c"} device-1 | {"level":"info","message":"POST /devices/e591984f-2984-464c-af35-ed84f1870c33/websocket 200 20ms","method":"POST","requestID":"24da491b570c555d3e8ceccf7639f75c","responseTime":20,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw","level":"info","message":"auth send jwt","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.495044,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.381746605Z"}]},"request_id":"d6469ed5-7cdf-4349-8a95-d3293b8a5c36","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.5002573} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e591984f-2984-464c-af35-ed84f1870c33? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b"} device-1 | {"level":"info","message":"GET /devices/e591984f-2984-464c-af35-ed84f1870c33? 200 19ms","method":"GET","requestID":"bc12e8f8f3c9725c7f175f7e546f1c8b","responseTime":19,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw","level":"info","message":"auth send jwt","requestID":"a573515928631bb675ceba093befe6e5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a573515928631bb675ceba093befe6e5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a573515928631bb675ceba093befe6e5"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.041104,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a573515928631bb675ceba093befe6e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a573515928631bb675ceba093befe6e5","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.431405855Z"}]},"request_id":"2e33c882-10f9-44e9-9da6-738cdff6cd0b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.5279348} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a573515928631bb675ceba093befe6e5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a573515928631bb675ceba093befe6e5"} device-1 | {"level":"info","message":"GET /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac? 200 18ms","method":"GET","requestID":"a573515928631bb675ceba093befe6e5","responseTime":18,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a573515928631bb675ceba093befe6e5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw","level":"info","message":"auth send jwt","requestID":"da5b157047921e53574142b0a977bef2"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"da5b157047921e53574142b0a977bef2","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"da5b157047921e53574142b0a977bef2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.335198,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"da5b157047921e53574142b0a977bef2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"da5b157047921e53574142b0a977bef2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Attempting to run experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Attempting to book experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully booked experiment","requestID":"da5b157047921e53574142b0a977bef2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c66db920-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c66e0740-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.059801,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c66db920-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c66db920-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144307,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c66e0740-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c66e0740-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.381746605Z"}]},"request_id":"9dcf88e8-63a7-4632-b658-35469c19bea0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.5988495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c66db920-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.431405855Z"}]},"request_id":"296b3e5a-ab5c-4d70-bf6e-a395c7fa3ca7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.599965} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c66e0740-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c66db920-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/e591984f-2984-464c-af35-ed84f1870c33? 200 20ms","method":"GET","requestID":"c66db920-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c66e0740-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac? 200 18ms","method":"GET","requestID":"c66e0740-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Setting up experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully set up experiment","requestID":"da5b157047921e53574142b0a977bef2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c6786780-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c678b5a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c678dcb0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully running experiment","requestID":"da5b157047921e53574142b0a977bef2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.727313,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c6786780-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c6786780-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805006,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:42074","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c678b5a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c678b5a0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42074","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.766405,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48458b8d-ad8a-40d1-92b8-fca1cfe66b3f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.6660647} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c678dcb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c678dcb0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.381746605Z"}]},"request_id":"d89bce0a-4cae-42ac-8647-ad8b560ab4e9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.669993} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c6786780-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.431405855Z"}]},"request_id":"1a771368-3874-4ded-9dad-202f5c44ceec","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.6730382} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c678dcb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e591984f-2984-464c-af35-ed84f1870c33/signaling 200 14ms","method":"POST","requestID":"c678dcb0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c678b5a0-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c67b74c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c6786780-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} device-1 | {"level":"info","message":"GET /devices/e591984f-2984-464c-af35-ed84f1870c33? 200 24ms","method":"GET","requestID":"c6786780-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c678b5a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac? 200 23ms","method":"GET","requestID":"c678b5a0-437c-11ef-8659-f5877ab12720","responseTime":23,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdbec039-a217-4442-8c0a-e575378a078c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.682979} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c67c8630-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.262146,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c67b74c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c67b74c0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98ef8ecc-da5a-4c88-bb1a-e25d150bb86b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"fe69714a-8b89-4604-9429-8dab940e0f7a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.6864223} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8823f3d3-c1a2-421e-9976-96f47922f3fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.6870685} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c67b74c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling 200 15ms","method":"POST","requestID":"c67b74c0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"da5b157047921e53574142b0a977bef2","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe4f8d57-e952-46db-a0c9-2ade3085b1ba","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.692314} authorization-1 | {"client_addr":"127.0.0.1:42060","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.472155,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c67c8630-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c67c8630-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c67c8630-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e591984f-2984-464c-af35-ed84f1870c33/signaling 200 14ms","method":"POST","requestID":"c67c8630-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c67f1e40-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"da5b157047921e53574142b0a977bef2","responseTime":159,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da5b157047921e53574142b0a977bef2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0d78f82-be56-4653-a650-2f2a6f27aa1d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.7061594} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw","level":"info","message":"auth send jwt","requestID":"27cdfd2612dae431aae401edbbf885f9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.098436,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"27cdfd2612dae431aae401edbbf885f9","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c67f1e40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c67f1e40-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27cdfd2612dae431aae401edbbf885f9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c67f1e40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735931,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} device-1 | {"level":"info","message":"POST /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling 200 10ms","method":"POST","requestID":"c67f1e40-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"27cdfd2612dae431aae401edbbf885f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"27cdfd2612dae431aae401edbbf885f9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Building connection plan","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"54f7da3d-a426-4732-a93c-d03b99f6d9a6"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"f765e6b9-b749-4f4c-8729-5af1aa21cf29"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b2e6ee1c-6310-4943-9bbb-a99ca4f627fb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"da5b157047921e53574142b0a977bef2"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"da5b157047921e53574142b0a977bef2"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c6811a10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.381746605Z"}]},"request_id":"b9a6de1a-af37-429a-9fa0-476918f274f4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.714645} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27cdfd2612dae431aae401edbbf885f9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.953108,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c6811a10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c6811a10-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27cdfd2612dae431aae401edbbf885f9"} gateway-1 | {"time_local":"16/Jul/2024:14:07:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e591984f-2984-464c-af35-ed84f1870c33? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27cdfd2612dae431aae401edbbf885f9"} device-1 | {"level":"info","message":"GET /devices/e591984f-2984-464c-af35-ed84f1870c33? 200 14ms","method":"GET","requestID":"27cdfd2612dae431aae401edbbf885f9","responseTime":14,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw","level":"info","message":"auth send jwt","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"d01e1054-1327-43a0-8afa-c5e35bd4de6d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.7287984} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4db7d187-68c0-4947-b88e-d0dfbed9902e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.729166} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"c6811a10-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.831739,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138865,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2NX0.3Ah9HQe4IerJpR2XFdLa_QMnNnQR1-YzepPqqc4OSxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:43.431405855Z"}]},"request_id":"8feadb14-4864-4545-aff1-097bd7092686","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.7381916} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c6811a10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c6811a10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c'","requestID":"c6811a10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c'","requestID":"c6811a10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c6811a10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 37ms","method":"POST","requestID":"c6811a10-437c-11ef-8659-f5877ab12720","responseTime":37,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e"} device-1 | {"level":"info","message":"GET /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac? 200 22ms","method":"GET","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e","responseTime":22,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fe643e9bf85a1e744cb6c3b04f7b87e"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c6811a10-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"da5b157047921e53574142b0a977bef2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c68b0520-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f71ea8a3-2e4a-4867-a980-55bf784ed48a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.7824304} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.518757,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c68b0520-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c68b0520-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c68b0520-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e591984f-2984-464c-af35-ed84f1870c33/signaling 200 8ms","method":"POST","requestID":"c68b0520-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c68c8bc0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33a3d30d-ccb8-44d6-ac76-265ca0eb8f92","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138865.793885} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.039145,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c68c8bc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c68c8bc0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c68c8bc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling 200 10ms","method":"POST","requestID":"c68c8bc0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling"} device-1 | {"data":{"peerconnection":"8f19a186-bd12-4f3f-bbfa-3c76b305659c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8f19a186-bd12-4f3f-bbfa-3c76b305659c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"676d377770faac2f3aa86aa49b6d582b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"676d377770faac2f3aa86aa49b6d582b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c"}}},"level":"info","message":"received a callback","requestID":"676d377770faac2f3aa86aa49b6d582b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"676d377770faac2f3aa86aa49b6d582b","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"676d377770faac2f3aa86aa49b6d582b"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33'"} device-1 | {"data":{"peerconnection":"8f19a186-bd12-4f3f-bbfa-3c76b305659c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"8f19a186-bd12-4f3f-bbfa-3c76b305659c","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8f19a186-bd12-4f3f-bbfa-3c76b305659c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"283804f3fff632fa33cd82b72af60183","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"283804f3fff632fa33cd82b72af60183","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c"}}},"level":"info","message":"received a callback","requestID":"283804f3fff632fa33cd82b72af60183"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"c7c8dc50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8f19a186-bd12-4f3f-bbfa-3c76b305659c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96eab1df-f82f-4b3a-b7a4-27cbae4de3b5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138867.8668408} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.300947,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c7c8dc50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c7c8dc50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"c7c8dc50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c 200 10ms","method":"GET","requestID":"c7c8dc50-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"283804f3fff632fa33cd82b72af60183","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"283804f3fff632fa33cd82b72af60183"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7cdbe50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da9e64f7-57ad-45bf-91c9-b5554ca6cbb1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138867.8981402} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.517523,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c7cdbe50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7cdbe50-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7cdbe50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling 200 10ms","method":"POST","requestID":"c7cdbe50-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7cf9310-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"015eb7b5-8ffb-4be1-8afa-0fe9342b6fd4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138867.9111118} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.938537,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c7cf9310-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c7cf9310-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7cf9310-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e591984f-2984-464c-af35-ed84f1870c33/signaling 200 11ms","method":"POST","requestID":"c7cf9310-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2N30.MvliNGUJiXbjGUxSeQXWDGNq9LSW2O2lWTVHkM2p-6Q","level":"info","message":"auth send jwt","requestID":"2e46846c6b55d4354bdb6fe806fec1e0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2e46846c6b55d4354bdb6fe806fec1e0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","requestID":"2e46846c6b55d4354bdb6fe806fec1e0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.218062,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2e46846c6b55d4354bdb6fe806fec1e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138867,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2N30.MvliNGUJiXbjGUxSeQXWDGNq9LSW2O2lWTVHkM2p-6Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2e46846c6b55d4354bdb6fe806fec1e0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","requestID":"2e46846c6b55d4354bdb6fe806fec1e0"} experiment-1 | {"level":"info","message":"GET /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b 200 16ms","method":"GET","requestID":"2e46846c6b55d4354bdb6fe806fec1e0","responseTime":16,"status":200,"url":"/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e46846c6b55d4354bdb6fe806fec1e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2N30.MvliNGUJiXbjGUxSeQXWDGNq9LSW2O2lWTVHkM2p-6Q","level":"info","message":"auth send jwt","requestID":"763b3c88060ba8ca8701b428b172743f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"763b3c88060ba8ca8701b428b172743f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","requestID":"763b3c88060ba8ca8701b428b172743f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.235,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"763b3c88060ba8ca8701b428b172743f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138867,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2N30.MvliNGUJiXbjGUxSeQXWDGNq9LSW2O2lWTVHkM2p-6Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"763b3c88060ba8ca8701b428b172743f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Attempting to finish experiment","requestID":"763b3c88060ba8ca8701b428b172743f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"c7dd75c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.324871,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c7dd75c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138867,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2N30.MvliNGUJiXbjGUxSeQXWDGNq9LSW2O2lWTVHkM2p-6Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7dd75c0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8f19a186-bd12-4f3f-bbfa-3c76b305659c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"52a9eb766cd93da67e35d6b692d76c4c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"52a9eb766cd93da67e35d6b692d76c4c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8f19a186-bd12-4f3f-bbfa-3c76b305659c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8f19a186-bd12-4f3f-bbfa-3c76b305659c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"0fee0d18-0fda-42da-9d16-fe4d4d3d90dd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.0238285} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61f2a310-9ffb-4516-b8b1-3fdd8c66a008","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.0242746} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93397830a63dc0a2529ca8d0c08efe55","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c"}}},"level":"info","message":"received a callback","requestID":"52a9eb766cd93da67e35d6b692d76c4c"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"93397830a63dc0a2529ca8d0c08efe55","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"c7dd75c0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c"}}},"level":"info","message":"received a callback","requestID":"93397830a63dc0a2529ca8d0c08efe55"} device-1 | {"data":{"peerconnection":"8f19a186-bd12-4f3f-bbfa-3c76b305659c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"c7dd75c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c 204 51ms","method":"DELETE","requestID":"c7dd75c0-437c-11ef-8659-f5877ab12720","responseTime":51,"status":204,"url":"/peerconnections/8f19a186-bd12-4f3f-bbfa-3c76b305659c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"},"level":"info","message":"Successfully finished experiment","requestID":"763b3c88060ba8ca8701b428b172743f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7e8e770-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fefa2f0c3-283a-4e73-97ef-af16c52b46ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"558c5086-ea61-4e61-9ee6-3bc441b82700","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.0780308} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.956329,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c7e8e770-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c7e8e770-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7e8e770-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling 200 13ms","method":"POST","requestID":"c7e8e770-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98ef8ecc-da5a-4c88-bb1a-e25d150bb86b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"46f22077-a04f-4ef2-bc03-f24519ae6fef","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.0853558} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4f2ff8d-5c1f-4104-871a-bccbcb8c9aab","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.085876} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c7eb7f80-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"763b3c88060ba8ca8701b428b172743f","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe591984f-2984-464c-af35-ed84f1870c33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4f68d41-d481-47dc-91cd-8dccf5b14963","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.096098} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.169695,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c7eb7f80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c7eb7f80-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c7eb7f80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e591984f-2984-464c-af35-ed84f1870c33/signaling 200 15ms","method":"POST","requestID":"c7eb7f80-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/e591984f-2984-464c-af35-ed84f1870c33/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b","requestID":"763b3c88060ba8ca8701b428b172743f"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"763b3c88060ba8ca8701b428b172743f"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3190","request_time":"4.177","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"697409c3a9debb3a6c92991ebb70861b"} experiment-1 | {"level":"info","message":"DELETE /experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b 204 181ms","method":"DELETE","requestID":"763b3c88060ba8ca8701b428b172743f","responseTime":181,"status":204,"url":"/experiments/98ef8ecc-da5a-4c88-bb1a-e25d150bb86b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"52a9eb766cd93da67e35d6b692d76c4c","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"52a9eb766cd93da67e35d6b692d76c4c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM","level":"info","message":"auth send jwt","requestID":"faa72e4c06fb82f6d611523d4f597518"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"faa72e4c06fb82f6d611523d4f597518","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 144ms","method":"POST","requestID":"93397830a63dc0a2529ca8d0c08efe55","responseTime":144,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"93397830a63dc0a2529ca8d0c08efe55"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2704","request_time":"2.711","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3b47bd68b5f3b911e9c35528e4bd8fb3"} device-1 | {"level":"info","message":"postDevices called","requestID":"faa72e4c06fb82f6d611523d4f597518"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/efa2f0c3-283a-4e73-97ef-af16c52b46ac' closed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.028089,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"faa72e4c06fb82f6d611523d4f597518","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138868,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"faa72e4c06fb82f6d611523d4f597518","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e591984f-2984-464c-af35-ed84f1870c33' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7731e76f-15f8-48b1-92d7-dff0cb660c0a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.1947126} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"faa72e4c06fb82f6d611523d4f597518","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7558d89-ac1f-4731-b90e-18ff850c800c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.2003639} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"faa72e4c06fb82f6d611523d4f597518","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a7756c23-cddf-4fb5-ac68-808a5ea8ea92","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.2100234} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec65e035-fe17-4375-b334-c52b2873f2e8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.2103362} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"faa72e4c06fb82f6d611523d4f597518","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.209945279Z"}]},"request_id":"06115ba3-c17e-4594-a5c1-41d068a0ab16","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.214518} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"faa72e4c06fb82f6d611523d4f597518","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"faa72e4c06fb82f6d611523d4f597518"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"faa72e4c06fb82f6d611523d4f597518"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"faa72e4c06fb82f6d611523d4f597518","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM","level":"info","message":"auth send jwt","requestID":"2b0a16f5e686b064f497af2ff4218d9e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2b0a16f5e686b064f497af2ff4218d9e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2b0a16f5e686b064f497af2ff4218d9e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.785144,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2b0a16f5e686b064f497af2ff4218d9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138868,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2b0a16f5e686b064f497af2ff4218d9e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ab64855c-7ab0-4afd-92ea-b806fe10a83d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.2440996} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2b0a16f5e686b064f497af2ff4218d9e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"964ae821-dcd0-4de2-b6d9-aa95a6bad354","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.248538} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2b0a16f5e686b064f497af2ff4218d9e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"fd65c424-13fb-47d3-ae3f-3488913c4cff","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.2596054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0e2778c-241f-4133-bf18-f5b3319d5b4c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.2597992} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2b0a16f5e686b064f497af2ff4218d9e","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.259574575Z"}]},"request_id":"f36c37fc-8d86-4fe3-a575-0327dbe9c3f4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.263813} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2b0a16f5e686b064f497af2ff4218d9e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2b0a16f5e686b064f497af2ff4218d9e"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b0a16f5e686b064f497af2ff4218d9e"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"2b0a16f5e686b064f497af2ff4218d9e","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM","level":"info","message":"auth send jwt","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202689,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5d19a2eb7d3acb116e75ae4f25d857f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138868,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.209945279Z"}]},"request_id":"45eabfee-620e-40b7-942b-0759eeef0cca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.7536817} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60564daa-d45a-4544-934f-650986e714c0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.7601445} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.209945279Z"}]},"request_id":"7f1330db-53da-4daf-bfd3-75e4e9359f7f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138868.7733822} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4"} device-1 | {"level":"info","message":"PATCH /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4 200 36ms","method":"PATCH","requestID":"5d19a2eb7d3acb116e75ae4f25d857f4","responseTime":36,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM","level":"info","message":"auth send jwt","requestID":"378ac20f09624f3213501181fd59dbdd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"378ac20f09624f3213501181fd59dbdd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"378ac20f09624f3213501181fd59dbdd"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.773876,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"378ac20f09624f3213501181fd59dbdd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138868,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg2OH0.XkEIXKeLUW8GhElsawnotaC3j3oRCloMya3szel0WNM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"378ac20f09624f3213501181fd59dbdd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"378ac20f09624f3213501181fd59dbdd"} gateway-1 | {"time_local":"16/Jul/2024:14:07:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"378ac20f09624f3213501181fd59dbdd"} device-1 | {"level":"info","message":"POST /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/websocket 200 22ms","method":"POST","requestID":"378ac20f09624f3213501181fd59dbdd","responseTime":22,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d493166b7cf7974093ab610395d07001","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d493166b7cf7974093ab610395d07001","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/08b28356-bd98-4487-b3a7-228d97dc724a/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d493166b7cf7974093ab610395d07001"} device-1 | {"level":"info","message":"OPTIONS /devices/08b28356-bd98-4487-b3a7-228d97dc724a/websocket 200 1ms","method":"OPTIONS","requestID":"d493166b7cf7974093ab610395d07001","responseTime":1,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI","level":"info","message":"auth send jwt","requestID":"6beb53b88cfcb14c38021cb080a254ca"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6beb53b88cfcb14c38021cb080a254ca","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6beb53b88cfcb14c38021cb080a254ca"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.221925,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6beb53b88cfcb14c38021cb080a254ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6beb53b88cfcb14c38021cb080a254ca","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6beb53b88cfcb14c38021cb080a254ca"} device-1 | {"level":"info","message":"POST /devices/08b28356-bd98-4487-b3a7-228d97dc724a/websocket 200 22ms","method":"POST","requestID":"6beb53b88cfcb14c38021cb080a254ca","responseTime":22,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:07:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/08b28356-bd98-4487-b3a7-228d97dc724a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6beb53b88cfcb14c38021cb080a254ca"} device-1 | {"level":"info","message":"device 'http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI","level":"info","message":"auth send jwt","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.461279,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.209945279Z"}]},"request_id":"c3f27af9-ce4b-4ac1-ab4b-edf8fc7d46a9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.3160174} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54"} gateway-1 | {"time_local":"16/Jul/2024:14:07:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54"} device-1 | {"level":"info","message":"GET /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4? 200 18ms","method":"GET","requestID":"7ba064f0cda4cc2c20e7abaf2f68bc54","responseTime":18,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI","level":"info","message":"auth send jwt","requestID":"51c8ace115ce3c2061fd77598169fa39"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"51c8ace115ce3c2061fd77598169fa39","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"51c8ace115ce3c2061fd77598169fa39"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920468,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"51c8ace115ce3c2061fd77598169fa39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"51c8ace115ce3c2061fd77598169fa39","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.259574575Z"}]},"request_id":"f69e2c28-a3f6-4e6d-9cf4-5a5c1e477fbd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.3394036} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"51c8ace115ce3c2061fd77598169fa39","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"51c8ace115ce3c2061fd77598169fa39"} device-1 | {"level":"info","message":"GET /devices/08b28356-bd98-4487-b3a7-228d97dc724a? 200 16ms","method":"GET","requestID":"51c8ace115ce3c2061fd77598169fa39","responseTime":16,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08b28356-bd98-4487-b3a7-228d97dc724a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"51c8ace115ce3c2061fd77598169fa39"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI","level":"info","message":"auth send jwt","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6ea84f9b251748d8636978f18cfd8fb8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.373613,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"6ea84f9b251748d8636978f18cfd8fb8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6ea84f9b251748d8636978f18cfd8fb8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Attempting to run experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Attempting to book experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully booked experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c94b5da0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c94b84b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630396,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c94b5da0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c94b5da0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.88458,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c94b84b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"c94b84b0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.209945279Z"}]},"request_id":"99f6d506-2662-42d8-95b5-1a00f8a176ec","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4036565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c94b5da0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.259574575Z"}]},"request_id":"22107292-6acb-4b02-a9fb-fd652beba7c5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4087675} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c94b5da0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c94b84b0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4? 200 16ms","method":"GET","requestID":"c94b5da0-437c-11ef-8659-f5877ab12720","responseTime":16,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c94b84b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/08b28356-bd98-4487-b3a7-228d97dc724a? 200 19ms","method":"GET","requestID":"c94b84b0-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Setting up experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully set up experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c95548b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c95596d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c955e4f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.751649,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c95548b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c95548b0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully running experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87154,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c95596d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c95596d0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2fd0f78a-eb9d-4190-a440-68edb7d31735","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4689038} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.259574575Z"}]},"request_id":"a08fcf0b-fc82-4a04-9f90-da040f12deb8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4715014} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.045005,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c955e4f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c955e4f0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c95596d0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.209945279Z"}]},"request_id":"7515d7a5-04d8-49f7-a471-07143cbca91c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4728317} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c95548b0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c95596d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/08b28356-bd98-4487-b3a7-228d97dc724a? 200 20ms","method":"GET","requestID":"c95596d0-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c955e4f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling 200 19ms","method":"POST","requestID":"c955e4f0-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c95548b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4? 200 24ms","method":"GET","requestID":"c95548b0-437c-11ef-8659-f5877ab12720","responseTime":24,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9594050-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88694991-0cb9-4c57-ba61-ad41152bc870#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88694991-0cb9-4c57-ba61-ad41152bc870","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"9f476be3-48ab-427a-aba2-9f25555d7535","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4864016} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92949696-07bd-4f1f-a339-c359b0d6abb3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4867074} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9598e70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"6ea84f9b251748d8636978f18cfd8fb8","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b47c1e81-f670-410a-8fc2-f89d3e3f5978","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.4909658} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.864263,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c9594050-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9594050-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30c82986-f3d7-4fb5-bd54-bbc1236927c3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.493717} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.257359,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c9598e70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9594050-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9598e70-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} device-1 | {"level":"info","message":"POST /devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling 200 10ms","method":"POST","requestID":"c9594050-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling"} gateway-1 | {"time_local":"16/Jul/2024:14:07:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"6ea84f9b251748d8636978f18cfd8fb8","responseTime":142,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9598e70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling 200 12ms","method":"POST","requestID":"c9598e70-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI","level":"info","message":"auth send jwt","requestID":"9f14461413107ec3b8a976afa2cd5615"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9f14461413107ec3b8a976afa2cd5615","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c95bb150-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9f14461413107ec3b8a976afa2cd5615"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a03f5ff2-adcd-44f2-8282-f0365fbbd6a3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.507176} authorization-1 | {"client_addr":"127.0.0.1:55158","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992728,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9f14461413107ec3b8a976afa2cd5615","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9f14461413107ec3b8a976afa2cd5615","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.985601,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c95bb150-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c95bb150-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.209945279Z"}]},"request_id":"36c33452-0862-44aa-9b8a-d9110157ca77","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.5118618} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c95bb150-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling 200 10ms","method":"POST","requestID":"c95bb150-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9f14461413107ec3b8a976afa2cd5615","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Building connection plan","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"4f95c927-d4ba-4807-ab07-599f0374158d"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"c585a2f8-e0f7-4c78-8e06-82a9f9c14188"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"f5df7cdb-5254-482b-9782-d961edcabd4b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"c95dd430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9f14461413107ec3b8a976afa2cd5615"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} gateway-1 | {"time_local":"16/Jul/2024:14:07:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f14461413107ec3b8a976afa2cd5615"} device-1 | {"level":"info","message":"GET /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4? 200 14ms","method":"GET","requestID":"9f14461413107ec3b8a976afa2cd5615","responseTime":14,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.957739,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c95dd430-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c95dd430-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI","level":"info","message":"auth send jwt","requestID":"40871322ec0b989c11c87676c7e9135a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"40871322ec0b989c11c87676c7e9135a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40871322ec0b989c11c87676c7e9135a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.873443,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"40871322ec0b989c11c87676c7e9135a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138870,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3MH0.RbuOu_4wi2gTUTzmR9ALE6DMOg_F-iOdymRCj7NSHkI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40871322ec0b989c11c87676c7e9135a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"7df3066c-f2d7-4607-bc1d-a3a2403d041c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.529157} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0212984-b154-4d41-823d-8df15e188d0b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.5295107} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"c95dd430-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:48.259574575Z"}]},"request_id":"e784a1fa-242e-45da-a90c-99a880f1b7c9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.5341084} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"40871322ec0b989c11c87676c7e9135a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"c95dd430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"c95dd430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1'","requestID":"c95dd430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1'","requestID":"c95dd430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"c95dd430-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"c95dd430-437c-11ef-8659-f5877ab12720","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40871322ec0b989c11c87676c7e9135a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08b28356-bd98-4487-b3a7-228d97dc724a? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40871322ec0b989c11c87676c7e9135a"} device-1 | {"level":"info","message":"GET /devices/08b28356-bd98-4487-b3a7-228d97dc724a? 200 23ms","method":"GET","requestID":"40871322ec0b989c11c87676c7e9135a","responseTime":23,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"c95dd430-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6ea84f9b251748d8636978f18cfd8fb8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c966d4e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec97631f-53a3-4e16-944e-986b6391a29e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.5789378} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.277747,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c966d4e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c966d4e0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c966d4e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling 200 9ms","method":"POST","requestID":"c966d4e0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"c9688290-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"511c7536-1fdf-448e-baa8-2a9c3901bc41","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138870.5898588} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.540761,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c9688290-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c9688290-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"c9688290-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling 200 8ms","method":"POST","requestID":"c9688290-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling"} device-1 | {"data":{"peerconnection":"42cdfdd0-88d6-4020-ab15-cdea024feda1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42cdfdd0-88d6-4020-ab15-cdea024feda1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8423210e3824f7100c1fcdae59725305","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8423210e3824f7100c1fcdae59725305","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1"}}},"level":"info","message":"received a callback","requestID":"8423210e3824f7100c1fcdae59725305"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"8423210e3824f7100c1fcdae59725305","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"8423210e3824f7100c1fcdae59725305"} device-1 | {"data":{"peerconnection":"42cdfdd0-88d6-4020-ab15-cdea024feda1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"42cdfdd0-88d6-4020-ab15-cdea024feda1","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42cdfdd0-88d6-4020-ab15-cdea024feda1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a61b52b0cfeb4c80d093bd58c861caa6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a61b52b0cfeb4c80d093bd58c861caa6","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1"}}},"level":"info","message":"received a callback","requestID":"a61b52b0cfeb4c80d093bd58c861caa6"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"caa8a3b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42cdfdd0-88d6-4020-ab15-cdea024feda1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"563bb8c7-954e-45d6-84f6-ade8ea6f9891","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.6894999} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.20734,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"caa8a3b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"caa8a3b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"caa8a3b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1 200 12ms","method":"GET","requestID":"caa8a3b0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"a61b52b0cfeb4c80d093bd58c861caa6","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"a61b52b0cfeb4c80d093bd58c861caa6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"caac9b50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b6655c8-4829-4134-964f-8e62ee18d666","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.715468} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.732268,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"caac9b50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"caac9b50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"caac9b50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling 200 11ms","method":"POST","requestID":"caac9b50-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"caae9720-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"507ea0e8-aa78-4f46-8a2f-56722e1cf6cc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.727287} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.815179,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"caae9720-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"caae9720-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"caae9720-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling 200 10ms","method":"POST","requestID":"caae9720-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY","level":"info","message":"auth send jwt","requestID":"08e5f61c04918570634e6bd3e730fb95"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"08e5f61c04918570634e6bd3e730fb95","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/88694991-0cb9-4c57-ba61-ad41152bc870","requestID":"08e5f61c04918570634e6bd3e730fb95"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.348931,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"08e5f61c04918570634e6bd3e730fb95","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138872,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"08e5f61c04918570634e6bd3e730fb95","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/88694991-0cb9-4c57-ba61-ad41152bc870","requestID":"08e5f61c04918570634e6bd3e730fb95"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/88694991-0cb9-4c57-ba61-ad41152bc870 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"08e5f61c04918570634e6bd3e730fb95"} experiment-1 | {"level":"info","message":"GET /experiments/88694991-0cb9-4c57-ba61-ad41152bc870 200 12ms","method":"GET","requestID":"08e5f61c04918570634e6bd3e730fb95","responseTime":12,"status":200,"url":"/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY","level":"info","message":"auth send jwt","requestID":"33136a07382f25ed8d7bcfe8e61ecffb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"33136a07382f25ed8d7bcfe8e61ecffb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/88694991-0cb9-4c57-ba61-ad41152bc870","requestID":"33136a07382f25ed8d7bcfe8e61ecffb"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.138715,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"33136a07382f25ed8d7bcfe8e61ecffb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138872,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"33136a07382f25ed8d7bcfe8e61ecffb","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Attempting to finish experiment","requestID":"33136a07382f25ed8d7bcfe8e61ecffb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cab8a940-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.809225,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cab8a940-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138872,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cab8a940-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"42cdfdd0-88d6-4020-ab15-cdea024feda1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"34b1f021077e1f95a72eb95dbeb336c0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"34b1f021077e1f95a72eb95dbeb336c0","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8fd0d83d12af86b02366879a3b1b3519","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8fd0d83d12af86b02366879a3b1b3519","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1"}}},"level":"info","message":"received a callback","requestID":"34b1f021077e1f95a72eb95dbeb336c0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4908c6f-5e96-4e99-ae89-1f6699d0e0b4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.8110747} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42cdfdd0-88d6-4020-ab15-cdea024feda1': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F42cdfdd0-88d6-4020-ab15-cdea024feda1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"8d71d024-06d3-4418-971e-c804f825ea69","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.8115597} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1"}}},"level":"info","message":"received a callback","requestID":"8fd0d83d12af86b02366879a3b1b3519"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"cab8a940-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"42cdfdd0-88d6-4020-ab15-cdea024feda1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cab8a940-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1 204 43ms","method":"DELETE","requestID":"cab8a940-437c-11ef-8659-f5877ab12720","responseTime":43,"status":204,"url":"/peerconnections/42cdfdd0-88d6-4020-ab15-cdea024feda1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"},"level":"info","message":"Successfully finished experiment","requestID":"33136a07382f25ed8d7bcfe8e61ecffb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cac29450-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08b28356-bd98-4487-b3a7-228d97dc724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a44facdb-17bc-4a9c-96d0-c27647f3c61f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.8590076} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.398377,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cac29450-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cac29450-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cac29450-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling 200 11ms","method":"POST","requestID":"cac29450-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/08b28356-bd98-4487-b3a7-228d97dc724a/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88694991-0cb9-4c57-ba61-ad41152bc870': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88694991-0cb9-4c57-ba61-ad41152bc870","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"c7cb1026-997b-4b51-b20a-8c3e73fd3a47","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.8651474} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a3a34f4c-d24f-4d45-bece-eac9a5d9b6b4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.8653407} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"33136a07382f25ed8d7bcfe8e61ecffb","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cac49020-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42fc4a64-5f53-406e-8abb-5fa4f80889c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"004ad682-87d1-4a0b-960b-2969a80f90e9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.8719394} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.80411,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cac49020-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cac49020-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cac49020-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling 200 11ms","method":"POST","requestID":"cac49020-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/88694991-0cb9-4c57-ba61-ad41152bc870","requestID":"33136a07382f25ed8d7bcfe8e61ecffb"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/88694991-0cb9-4c57-ba61-ad41152bc870 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"33136a07382f25ed8d7bcfe8e61ecffb"} experiment-1 | {"level":"info","message":"DELETE /experiments/88694991-0cb9-4c57-ba61-ad41152bc870 204 154ms","method":"DELETE","requestID":"33136a07382f25ed8d7bcfe8e61ecffb","responseTime":154,"status":204,"url":"/experiments/88694991-0cb9-4c57-ba61-ad41152bc870"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2800","request_time":"4.119","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"855b8df4fb04b90702bf45957b436f92"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"34b1f021077e1f95a72eb95dbeb336c0","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"34b1f021077e1f95a72eb95dbeb336c0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY","level":"info","message":"auth send jwt","requestID":"06e0e303045ca537503588e38821fd8a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"8fd0d83d12af86b02366879a3b1b3519","responseTime":119,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"06e0e303045ca537503588e38821fd8a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"06e0e303045ca537503588e38821fd8a"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"8fd0d83d12af86b02366879a3b1b3519"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.78552,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.657","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"206a4235430564b5776d4d6c33187127"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"06e0e303045ca537503588e38821fd8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138872,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"06e0e303045ca537503588e38821fd8a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/42fc4a64-5f53-406e-8abb-5fa4f80889c4' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"39fee3c6-6153-4b5d-a9d6-ef4c7eea0c92","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.953217} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"06e0e303045ca537503588e38821fd8a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c92a0fd4-7f4d-48eb-9e6e-ddd538f74557","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.9587944} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"06e0e303045ca537503588e38821fd8a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/08b28356-bd98-4487-b3a7-228d97dc724a' closed"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"fa137ba5-56ea-4449-95eb-c46bafc2eeac","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.973042} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03cdfefe-a9f5-4931-9efe-fb5c54550c19","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.973187} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"06e0e303045ca537503588e38821fd8a","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:52.972995649Z"}]},"request_id":"11f9c104-c22f-4af2-a785-62b72f0baa3f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138872.977252} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"06e0e303045ca537503588e38821fd8a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"06e0e303045ca537503588e38821fd8a"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"06e0e303045ca537503588e38821fd8a","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"06e0e303045ca537503588e38821fd8a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY","level":"info","message":"auth send jwt","requestID":"cb4f864f468c2254ead9084755331dd8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb4f864f468c2254ead9084755331dd8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cb4f864f468c2254ead9084755331dd8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.71523,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cb4f864f468c2254ead9084755331dd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138872,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3Mn0.78sekeSR67e3IDSQ2lTPVFJLNAAKHm1CJBLwlF6TgVY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cb4f864f468c2254ead9084755331dd8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c030d922-0a42-4d43-b606-51976022f09f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.0010126} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cb4f864f468c2254ead9084755331dd8","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f1eb18b-dc67-4c4a-b5d5-1bb10c27fda0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.0055027} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cb4f864f468c2254ead9084755331dd8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"66932265-7f72-403a-bc62-232c1b397f8f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.0170796} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04fb2a07-b12e-426f-ba9b-317415a631d5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.0172865} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cb4f864f468c2254ead9084755331dd8","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:53.017046784Z"}]},"request_id":"2a671b3b-fab6-4d98-bb09-c56be3412235","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.0212202} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb4f864f468c2254ead9084755331dd8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cb4f864f468c2254ead9084755331dd8"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"cb4f864f468c2254ead9084755331dd8","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb4f864f468c2254ead9084755331dd8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3M30.gF7T-YaBlvRTxC4-GkcNWufDrhngAwQbsGrH0OtxXRk","level":"info","message":"auth send jwt","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638521,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"76cdd8e9a23d3c421a6c5876bb54dd23","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138873,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3M30.gF7T-YaBlvRTxC4-GkcNWufDrhngAwQbsGrH0OtxXRk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:52.972995649Z"}]},"request_id":"510b7d51-e90e-437c-939c-7f096b9f502e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.510274} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2d23409-794c-4026-a6f9-d04ae6b1df89","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.5175176} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:52.972995649Z"}]},"request_id":"543658f4-ccfe-4cdf-b805-0621503395af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138873.5295875} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23"} gateway-1 | {"time_local":"16/Jul/2024:14:07:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23"} device-1 | {"level":"info","message":"PATCH /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06 200 34ms","method":"PATCH","requestID":"76cdd8e9a23d3c421a6c5876bb54dd23","responseTime":34,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3M30.gF7T-YaBlvRTxC4-GkcNWufDrhngAwQbsGrH0OtxXRk","level":"info","message":"auth send jwt","requestID":"abfb1bcf926a0facb2a84afb681250d5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"abfb1bcf926a0facb2a84afb681250d5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"abfb1bcf926a0facb2a84afb681250d5"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.585697,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"abfb1bcf926a0facb2a84afb681250d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138873,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3M30.gF7T-YaBlvRTxC4-GkcNWufDrhngAwQbsGrH0OtxXRk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"abfb1bcf926a0facb2a84afb681250d5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"abfb1bcf926a0facb2a84afb681250d5"} gateway-1 | {"time_local":"16/Jul/2024:14:07:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"abfb1bcf926a0facb2a84afb681250d5"} device-1 | {"level":"info","message":"POST /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/websocket 200 17ms","method":"POST","requestID":"abfb1bcf926a0facb2a84afb681250d5","responseTime":17,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d3074d69094e3a7455ed00131ad077a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d3074d69094e3a7455ed00131ad077a1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:07:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d3074d69094e3a7455ed00131ad077a1"} device-1 | {"level":"info","message":"OPTIONS /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/websocket 200 1ms","method":"OPTIONS","requestID":"d3074d69094e3a7455ed00131ad077a1","responseTime":1,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90","level":"info","message":"auth send jwt","requestID":"239a5673b0666a66cf7319b1e364cc38"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"239a5673b0666a66cf7319b1e364cc38","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"239a5673b0666a66cf7319b1e364cc38"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298221,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"239a5673b0666a66cf7319b1e364cc38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"239a5673b0666a66cf7319b1e364cc38","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"239a5673b0666a66cf7319b1e364cc38"} gateway-1 | {"time_local":"16/Jul/2024:14:07:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"239a5673b0666a66cf7319b1e364cc38"} device-1 | {"level":"info","message":"POST /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/websocket 200 20ms","method":"POST","requestID":"239a5673b0666a66cf7319b1e364cc38","responseTime":20,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90","level":"info","message":"auth send jwt","requestID":"04511466d1cba2b60134d207ea420653"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"04511466d1cba2b60134d207ea420653","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04511466d1cba2b60134d207ea420653"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286421,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"04511466d1cba2b60134d207ea420653","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"04511466d1cba2b60134d207ea420653","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:52.972995649Z"}]},"request_id":"0597f295-3c2b-4a2d-954f-ab625d148268","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.0776184} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04511466d1cba2b60134d207ea420653","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04511466d1cba2b60134d207ea420653"} gateway-1 | {"time_local":"16/Jul/2024:14:07:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"04511466d1cba2b60134d207ea420653"} device-1 | {"level":"info","message":"GET /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06? 200 15ms","method":"GET","requestID":"04511466d1cba2b60134d207ea420653","responseTime":15,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90","level":"info","message":"auth send jwt","requestID":"072cfcf36debef345765369b41fdfad1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"072cfcf36debef345765369b41fdfad1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"072cfcf36debef345765369b41fdfad1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878253,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"072cfcf36debef345765369b41fdfad1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"072cfcf36debef345765369b41fdfad1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:53.017046784Z"}]},"request_id":"5e9db828-64fc-4b6b-99d3-47626dc14cbb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.0976927} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"072cfcf36debef345765369b41fdfad1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"072cfcf36debef345765369b41fdfad1"} gateway-1 | {"time_local":"16/Jul/2024:14:07:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47148e9f-1053-4602-8f57-ff88ebc92e62? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"072cfcf36debef345765369b41fdfad1"} device-1 | {"level":"info","message":"GET /devices/47148e9f-1053-4602-8f57-ff88ebc92e62? 200 15ms","method":"GET","requestID":"072cfcf36debef345765369b41fdfad1","responseTime":15,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90","level":"info","message":"auth send jwt","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.261129,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5a67a8c5313e0db161f2af7adb3d8f2f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Attempting to run experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Attempting to book experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully booked experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc21af20-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc21fd40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179703,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc21af20-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc21af20-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.063653,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc21fd40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cc21fd40-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:52.972995649Z"}]},"request_id":"8c66dab0-9c57-4fe6-bf82-8bb592ee3970","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.1659253} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"cc21af20-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:53.017046784Z"}]},"request_id":"bbe43635-8403-4e50-bc1d-d510e9cf7a56","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.1709445} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc21af20-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06? 200 18ms","method":"GET","requestID":"cc21af20-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cc21fd40-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc21fd40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/47148e9f-1053-4602-8f57-ff88ebc92e62? 200 19ms","method":"GET","requestID":"cc21fd40-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Setting up experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully set up experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc2be850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc2c3670-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc2c5d80-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully running experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.765404,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc2be850-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cc2be850-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703669,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc2c3670-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc2c3670-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93500d44-833f-43d7-a9bb-29fc58695f11","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2304032} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.084368,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc2c5d80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cc2c5d80-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:53.017046784Z"}]},"request_id":"4e617649-aac7-422d-a731-0a64050643fa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.233051} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cc2c3670-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:52.972995649Z"}]},"request_id":"a2558b09-3706-4cb0-90bc-fc6001db3e81","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2351851} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc2be850-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc2c5d80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling 200 13ms","method":"POST","requestID":"cc2c5d80-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc2ea770-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc2c3670-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/47148e9f-1053-4602-8f57-ff88ebc92e62? 200 19ms","method":"GET","requestID":"cc2c3670-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc2be850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06? 200 23ms","method":"GET","requestID":"cc2be850-437c-11ef-8659-f5877ab12720","responseTime":23,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1f874b4-437a-4d6a-a355-84771fa6a0e2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2449882} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.081715,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc2ea770-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc2fb8e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cc2ea770-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F188d1dcc-079c-4ae6-b7d6-0c132ac5079b#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F188d1dcc-079c-4ae6-b7d6-0c132ac5079b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"39f21cc4-cca3-4b4c-99c5-213aa8b25639","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2463691} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62eb0943-c4ab-4f53-bee4-4f444220a130","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2467656} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc2ea770-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling 200 11ms","method":"POST","requestID":"cc2ea770-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64751992-1c34-4e67-8d5c-21b81d68c4a6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2520711} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.964441,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc2fb8e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc2fb8e0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} gateway-1 | {"time_local":"16/Jul/2024:14:07:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.152","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 144ms","method":"POST","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f","responseTime":144,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc2fb8e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling 200 11ms","method":"POST","requestID":"cc2fb8e0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc31b4b0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90","level":"info","message":"auth send jwt","requestID":"4586b04076f83bc64db741e726ae6ebe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4586b04076f83bc64db741e726ae6ebe","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4586b04076f83bc64db741e726ae6ebe"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c10e1b9-3e47-48bb-9aa3-9edaf4bae204","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.264354} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.70745,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4586b04076f83bc64db741e726ae6ebe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4586b04076f83bc64db741e726ae6ebe","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.847522,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc31b4b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cc31b4b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:52.972995649Z"}]},"request_id":"ed93e36b-313e-46e2-93b9-b0c6017e16d9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2681696} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc31b4b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling 200 9ms","method":"POST","requestID":"cc31b4b0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4586b04076f83bc64db741e726ae6ebe","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Building connection plan","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"f5027e76-6f1a-44d9-b532-a2403ecb2e41"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"38b8c99a-e793-470a-9a59-66061ba0ae0f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"18948351-873b-47b6-b7ed-e2fe218ac739"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"cc338970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4586b04076f83bc64db741e726ae6ebe"} gateway-1 | {"time_local":"16/Jul/2024:14:07:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4586b04076f83bc64db741e726ae6ebe"} device-1 | {"level":"info","message":"GET /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06? 200 11ms","method":"GET","requestID":"4586b04076f83bc64db741e726ae6ebe","responseTime":11,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.873354,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc338970-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cc338970-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90","level":"info","message":"auth send jwt","requestID":"52e15145610a3044faf799dc97608ee2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"52e15145610a3044faf799dc97608ee2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52e15145610a3044faf799dc97608ee2"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686735,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"52e15145610a3044faf799dc97608ee2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138875,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3NX0.FmlYzwwL3gIC3T-Ar_K48DjgzcwBu0fJBdMgy4kDw90"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52e15145610a3044faf799dc97608ee2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"87188a48-e9fc-4355-a8d0-c6a299a3c1d8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2834337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9623f52-7787-418e-ac80-9c74413f82f8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.2838705} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:53.017046784Z"}]},"request_id":"866e9e20-f456-462d-ac11-374dde88321d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.284574} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"cc338970-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"52e15145610a3044faf799dc97608ee2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52e15145610a3044faf799dc97608ee2"} device-1 | {"level":"info","message":"GET /devices/47148e9f-1053-4602-8f57-ff88ebc92e62? 200 11ms","method":"GET","requestID":"52e15145610a3044faf799dc97608ee2","responseTime":11,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/47148e9f-1053-4602-8f57-ff88ebc92e62? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52e15145610a3044faf799dc97608ee2"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"cc338970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"cc338970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123'","requestID":"cc338970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123'","requestID":"cc338970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"cc338970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"cc338970-437c-11ef-8659-f5877ab12720","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"cc338970-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5a67a8c5313e0db161f2af7adb3d8f2f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc3bc6d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11dfc58e-bea6-4438-bc50-7bcbdea14fe4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.330277} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.61503,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc3bc6d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc3bc6d0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc3bc6d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling 200 9ms","method":"POST","requestID":"cc3bc6d0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cc3d7480-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"55e1baa6-db64-496c-aaed-98656d259fef","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138875.3404768} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.281256,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc3d7480-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc3d7480-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cc3d7480-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling 200 9ms","method":"POST","requestID":"cc3d7480-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling"} device-1 | {"data":{"peerconnection":"5269a337-63ce-4da4-b94d-e69c6f595123","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5269a337-63ce-4da4-b94d-e69c6f595123","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d0dea592a490a2610dc8825691a3b72c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d0dea592a490a2610dc8825691a3b72c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123"}}},"level":"info","message":"received a callback","requestID":"d0dea592a490a2610dc8825691a3b72c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"d0dea592a490a2610dc8825691a3b72c","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"d0dea592a490a2610dc8825691a3b72c"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62'"} device-1 | {"data":{"peerconnection":"5269a337-63ce-4da4-b94d-e69c6f595123","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"5269a337-63ce-4da4-b94d-e69c6f595123","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5269a337-63ce-4da4-b94d-e69c6f595123","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"39c89d293f983e1907a64fe6ff9447c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"39c89d293f983e1907a64fe6ff9447c2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123"}}},"level":"info","message":"received a callback","requestID":"39c89d293f983e1907a64fe6ff9447c2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cd7ea710-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5269a337-63ce-4da4-b94d-e69c6f595123","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9eb7aa00-5576-4e8a-9cb5-958dcc26d1f0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.4480858} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.06768,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cd7ea710-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cd7ea710-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cd7ea710-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123 200 12ms","method":"GET","requestID":"cd7ea710-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"39c89d293f983e1907a64fe6ff9447c2","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"39c89d293f983e1907a64fe6ff9447c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd83d730-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"667b9b4e-7270-4992-abd2-70d1b7d24c66","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.4810271} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.878823,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cd83d730-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cd83d730-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd83d730-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling 200 13ms","method":"POST","requestID":"cd83d730-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd864830-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c61e5d8a-e0dd-4c06-984b-8e31511afcd0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.4982579} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.987872,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cd864830-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cd864830-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd864830-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling 200 14ms","method":"POST","requestID":"cd864830-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8","level":"info","message":"auth send jwt","requestID":"48afed2a78f90237b64178ead8b07522"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"48afed2a78f90237b64178ead8b07522","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","requestID":"48afed2a78f90237b64178ead8b07522"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.314473,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"48afed2a78f90237b64178ead8b07522","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138877,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48afed2a78f90237b64178ead8b07522","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","requestID":"48afed2a78f90237b64178ead8b07522"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48afed2a78f90237b64178ead8b07522"} experiment-1 | {"level":"info","message":"GET /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b 200 15ms","method":"GET","requestID":"48afed2a78f90237b64178ead8b07522","responseTime":15,"status":200,"url":"/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8","level":"info","message":"auth send jwt","requestID":"9b1980c022815b9d8bb7f8b12440267b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b1980c022815b9d8bb7f8b12440267b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","requestID":"9b1980c022815b9d8bb7f8b12440267b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.197995,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9b1980c022815b9d8bb7f8b12440267b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138877,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b1980c022815b9d8bb7f8b12440267b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Attempting to finish experiment","requestID":"9b1980c022815b9d8bb7f8b12440267b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cd925620-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.164865,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cd925620-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138877,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd925620-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5269a337-63ce-4da4-b94d-e69c6f595123","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"857355199df81b3e840625c2d67ffb13","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5269a337-63ce-4da4-b94d-e69c6f595123': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5269a337-63ce-4da4-b94d-e69c6f595123","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"e7951962-263a-4b20-9f3c-a84c4b8b864a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.5955536} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"857355199df81b3e840625c2d67ffb13","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"96ba79aa170e1c0699fddf0ddf1b1d42","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123"}}},"level":"info","message":"received a callback","requestID":"857355199df81b3e840625c2d67ffb13"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a5ef11c-b9f0-43c5-ba2b-5fba4459d700","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.596292} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"96ba79aa170e1c0699fddf0ddf1b1d42","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cd925620-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123"}}},"level":"info","message":"received a callback","requestID":"96ba79aa170e1c0699fddf0ddf1b1d42"} device-1 | {"data":{"peerconnection":"5269a337-63ce-4da4-b94d-e69c6f595123","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cd925620-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123 204 48ms","method":"DELETE","requestID":"cd925620-437c-11ef-8659-f5877ab12720","responseTime":48,"status":204,"url":"/peerconnections/5269a337-63ce-4da4-b94d-e69c6f595123"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"},"level":"info","message":"Successfully finished experiment","requestID":"9b1980c022815b9d8bb7f8b12440267b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cd9d2b90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2d0fb25f-5155-44fa-bf40-dfc460d4be06","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7c8e7df-8172-45ba-a8e9-833b24e71e8e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.6476178} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.186108,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cd9d2b90-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"cd9d2b90-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cd9d2b90-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f239bf32-cabe-490a-ba61-dde6e96fc49f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.661886} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F188d1dcc-079c-4ae6-b7d6-0c132ac5079b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F188d1dcc-079c-4ae6-b7d6-0c132ac5079b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"16b25c94-e2dc-495f-bbd7-e04c5b45c072","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.6624024} device-1 | {"level":"info","message":"POST /devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling 200 23ms","method":"POST","requestID":"cd9d2b90-437c-11ef-8659-f5877ab12720","responseTime":23,"status":200,"url":"/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cda0d510-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"9b1980c022815b9d8bb7f8b12440267b","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F47148e9f-1053-4602-8f57-ff88ebc92e62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78fb38f9-9030-4747-af71-f211efec3fe0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.6712103} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.86221,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cda0d510-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"cda0d510-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cda0d510-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling 200 13ms","method":"POST","requestID":"cda0d510-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/47148e9f-1053-4602-8f57-ff88ebc92e62/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b","requestID":"9b1980c022815b9d8bb7f8b12440267b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b1980c022815b9d8bb7f8b12440267b"} experiment-1 | {"level":"info","message":"DELETE /experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b 204 177ms","method":"DELETE","requestID":"9b1980c022815b9d8bb7f8b12440267b","responseTime":177,"status":204,"url":"/experiments/188d1dcc-079c-4ae6-b7d6-0c132ac5079b"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3191","request_time":"4.176","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"41194e76c540d6228a408dce2a53da1e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"857355199df81b3e840625c2d67ffb13","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"857355199df81b3e840625c2d67ffb13"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"96ba79aa170e1c0699fddf0ddf1b1d42","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"96ba79aa170e1c0699fddf0ddf1b1d42"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8","level":"info","message":"auth send jwt","requestID":"3d7b68aba7cffa88131dc166d672facb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d7b68aba7cffa88131dc166d672facb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3d7b68aba7cffa88131dc166d672facb"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2702","request_time":"2.696","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"82b31e3e41ae1dae6f794783576bef0a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.064385,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3d7b68aba7cffa88131dc166d672facb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138877,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3d7b68aba7cffa88131dc166d672facb","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2d0fb25f-5155-44fa-bf40-dfc460d4be06' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c2cb9b40-965d-4162-a0d7-992920f8c7ed","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.7583222} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d7b68aba7cffa88131dc166d672facb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/47148e9f-1053-4602-8f57-ff88ebc92e62' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d06e7f09-6ab6-4678-80ce-0cc8c126ba3c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.763586} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3d7b68aba7cffa88131dc166d672facb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"44926081-87f7-49ca-9d00-e31330272f86","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.780532} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"486a12c2-1459-4185-86fc-b8144f8d9bde","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.7810977} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3d7b68aba7cffa88131dc166d672facb","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.780498146Z"}]},"request_id":"4d2d8223-7840-4e35-a305-d173ab60c641","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.7858381} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3d7b68aba7cffa88131dc166d672facb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3d7b68aba7cffa88131dc166d672facb"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d7b68aba7cffa88131dc166d672facb"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"3d7b68aba7cffa88131dc166d672facb","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8","level":"info","message":"auth send jwt","requestID":"fadf342f86d35fe6b10038aeaad4708c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fadf342f86d35fe6b10038aeaad4708c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fadf342f86d35fe6b10038aeaad4708c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.73203,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"fadf342f86d35fe6b10038aeaad4708c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138877,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3N30.KpNmvh61Ozjt3CFPqI4diEIy_mxxCBrkJraQCEBXTi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fadf342f86d35fe6b10038aeaad4708c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b317dd4b-d498-4b8f-bdc0-7bf86cac695a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.8105392} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fadf342f86d35fe6b10038aeaad4708c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d96896d6-e472-4ddd-ae15-c2126972fbf8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.8147833} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"fadf342f86d35fe6b10038aeaad4708c","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a2705cd9-7312-42df-aadb-6b07a4c2586c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.8251715} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bccc7e06-e3a9-49ee-b676-c5136e4600ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.8252525} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"fadf342f86d35fe6b10038aeaad4708c","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.825139005Z"}]},"request_id":"132834bc-bb8a-4c22-8a86-03a448c397df","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138877.829156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fadf342f86d35fe6b10038aeaad4708c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fadf342f86d35fe6b10038aeaad4708c"} gateway-1 | {"time_local":"16/Jul/2024:14:07:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fadf342f86d35fe6b10038aeaad4708c"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"fadf342f86d35fe6b10038aeaad4708c","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"cf362acacec79968a504461600cc57de"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cf362acacec79968a504461600cc57de","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"718c2c98a4718ef95af3f32007ed0e79"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"718c2c98a4718ef95af3f32007ed0e79","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cf362acacec79968a504461600cc57de"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"718c2c98a4718ef95af3f32007ed0e79"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654938,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cf362acacec79968a504461600cc57de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cf362acacec79968a504461600cc57de","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.491848,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"718c2c98a4718ef95af3f32007ed0e79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"718c2c98a4718ef95af3f32007ed0e79","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.780498146Z"}]},"request_id":"63ad3f8b-9acf-4411-9eba-cb7d9442611f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.3097186} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cf362acacec79968a504461600cc57de","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.825139005Z"}]},"request_id":"39ad556b-d821-45a6-9454-4bc1edb96c1c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.310236} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"718c2c98a4718ef95af3f32007ed0e79","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f753c8c-94b3-4ee8-a5dd-8729593a311a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.3136868} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cf362acacec79968a504461600cc57de","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13bfef25-09fb-4b00-bb9e-748dea37cd32","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.3147354} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"718c2c98a4718ef95af3f32007ed0e79","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.825139005Z"}]},"request_id":"4a7191f6-04e7-4aa8-b646-60e44b61427a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.3171394} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"718c2c98a4718ef95af3f32007ed0e79","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"718c2c98a4718ef95af3f32007ed0e79"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"718c2c98a4718ef95af3f32007ed0e79"} device-1 | {"level":"info","message":"PATCH /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b 200 18ms","method":"PATCH","requestID":"718c2c98a4718ef95af3f32007ed0e79","responseTime":18,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"5a9dc57c759e8480b9878358cea68fbb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5a9dc57c759e8480b9878358cea68fbb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5a9dc57c759e8480b9878358cea68fbb"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.767493,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5a9dc57c759e8480b9878358cea68fbb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a9dc57c759e8480b9878358cea68fbb","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.780498146Z"}]},"request_id":"bce4c979-397f-49cb-9aed-7193d4878cf5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.3276477} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cf362acacec79968a504461600cc57de","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cf362acacec79968a504461600cc57de"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cf362acacec79968a504461600cc57de"} device-1 | {"level":"info","message":"PATCH /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8 200 31ms","method":"PATCH","requestID":"cf362acacec79968a504461600cc57de","responseTime":31,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"f667b88538d705a6efe9a87688971064"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f667b88538d705a6efe9a87688971064","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f667b88538d705a6efe9a87688971064"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.822554,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f667b88538d705a6efe9a87688971064","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f667b88538d705a6efe9a87688971064","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5a9dc57c759e8480b9878358cea68fbb"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5a9dc57c759e8480b9878358cea68fbb"} device-1 | {"level":"info","message":"POST /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/websocket 200 19ms","method":"POST","requestID":"5a9dc57c759e8480b9878358cea68fbb","responseTime":19,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f667b88538d705a6efe9a87688971064"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f667b88538d705a6efe9a87688971064"} device-1 | {"level":"info","message":"POST /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/websocket 200 14ms","method":"POST","requestID":"f667b88538d705a6efe9a87688971064","responseTime":14,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84022,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.780498146Z"}]},"request_id":"8a5579d4-265a-4a7e-9ad6-35b5d22d6538","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.3854935} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6"} device-1 | {"level":"info","message":"GET /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8? 200 13ms","method":"GET","requestID":"27b70aa2c44cf5dbb7ef5bdbccbcd0a6","responseTime":13,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"544f13ab766ca1589336fbb788b390cc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"544f13ab766ca1589336fbb788b390cc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"544f13ab766ca1589336fbb788b390cc"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.889113,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"544f13ab766ca1589336fbb788b390cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"544f13ab766ca1589336fbb788b390cc","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.825139005Z"}]},"request_id":"369336ec-4472-48e8-9e9c-b0951db85bf5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.4044163} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"544f13ab766ca1589336fbb788b390cc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"544f13ab766ca1589336fbb788b390cc"} device-1 | {"level":"info","message":"GET /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b? 200 14ms","method":"GET","requestID":"544f13ab766ca1589336fbb788b390cc","responseTime":14,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"544f13ab766ca1589336fbb788b390cc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.10953,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Attempting to run experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Attempting to book experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully booked experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce1c94c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce1cbbd0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984644,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce1c94c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce1c94c0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.95249,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce1cbbd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce1cbbd0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.780498146Z"}]},"request_id":"e1f074dd-7ef1-428b-9e47-0240f8473219","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.4838443} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ce1c94c0-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.825139005Z"}]},"request_id":"922d391c-8134-4101-8a7f-ebf4e82fd4d1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.484398} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ce1cbbd0-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce1c94c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8? 200 14ms","method":"GET","requestID":"ce1c94c0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce1cbbd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b? 200 15ms","method":"GET","requestID":"ce1cbbd0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Setting up experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully set up experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce271c10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce276a30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce27b850-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732201,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully running experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce271c10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce271c10-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.877328,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce276a30-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce276a30-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e90f6785-fb18-402c-8288-69fd9f423405","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.5546496} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.672966,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce27b850-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ce27b850-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.780498146Z"}]},"request_id":"1e380fc2-a640-423b-af64-dc2748c4f2fe","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.5568879} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.825139005Z"}]},"request_id":"7f6fd920-41f3-4365-9586-1e25e3fdb4bc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.5581489} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ce271c10-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ce276a30-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce27b850-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling 200 17ms","method":"POST","requestID":"ce27b850-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce271c10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8? 200 22ms","method":"GET","requestID":"ce271c10-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce276a30-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b? 200 20ms","method":"GET","requestID":"ce276a30-437c-11ef-8659-f5877ab12720","responseTime":20,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce2a9e80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce2aeca0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3da9cc45-8684-4fa9-a8ae-ee49c3ececc1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.573046} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74526649-2e8d-4f75-9dbc-ff47177937f0#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74526649-2e8d-4f75-9dbc-ff47177937f0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"073ae23b-700e-4111-a4da-93c9a850b429","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.5735657} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aee3bc5a-3712-4cf9-8e66-1b54697f566a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.5738502} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.350273,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce2a9e80-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ce2a9e80-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35001857-d98d-418d-bd39-3105a1525cee","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.576239} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce2a9e80-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling 200 12ms","method":"POST","requestID":"ce2a9e80-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.71531,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce2aeca0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ce2aeca0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 169ms","method":"POST","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4","responseTime":169,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce2aeca0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling 200 15ms","method":"POST","requestID":"ce2aeca0-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce2d84b0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"cdba23da616e974474759ca4d725ae25"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cdba23da616e974474759ca4d725ae25","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cdba23da616e974474759ca4d725ae25"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9aa0f23f-94c3-42b4-aaeb-eeb727f666e2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.5913947} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471275,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce2d84b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce2d84b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.542822,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cdba23da616e974474759ca4d725ae25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cdba23da616e974474759ca4d725ae25","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce2d84b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling 200 9ms","method":"POST","requestID":"ce2d84b0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.780498146Z"}]},"request_id":"f19d8d05-add2-4f4e-8d12-563e0fb5a903","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.5970082} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Building connection plan","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"02bb3a21-cbcf-468a-a169-beeac3c6d78b"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"d7401907-4d13-4bbc-9cbd-398e83656c5a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"af8177df-8ee6-42b6-9876-9672ee29e266"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cdba23da616e974474759ca4d725ae25","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cdba23da616e974474759ca4d725ae25"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cdba23da616e974474759ca4d725ae25"} device-1 | {"level":"info","message":"GET /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8? 200 11ms","method":"GET","requestID":"cdba23da616e974474759ca4d725ae25","responseTime":11,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.729216,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce2f5970-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho","level":"info","message":"auth send jwt","requestID":"0fdeda00261199eb923526c132440b3a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0fdeda00261199eb923526c132440b3a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fdeda00261199eb923526c132440b3a"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626432,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0fdeda00261199eb923526c132440b3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138878,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg3OH0.wYimahfk9fp8Kz0m-ln4dR7jKXDRH0FC_-1Gq2eZ1ho"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fdeda00261199eb923526c132440b3a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"27a7d5ad-39f7-4319-b9fa-05ef68a07b2b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.6126394} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fe552721-84e1-4079-8b4e-bcc0d8e0bfb6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.6128907} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:07:57.825139005Z"}]},"request_id":"3ab1d58f-541d-461c-9da0-d2639f7a263d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.6163042} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fdeda00261199eb923526c132440b3a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172'","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172'","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fdeda00261199eb923526c132440b3a"} device-1 | {"level":"info","message":"GET /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b? 200 20ms","method":"GET","requestID":"0fdeda00261199eb923526c132440b3a","responseTime":20,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b?"} gateway-1 | {"time_local":"16/Jul/2024:14:07:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0fdeda00261199eb923526c132440b3a"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ce2f5970-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4f8ea1ac08fc4d890c5e5b741f93fae4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce3721a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92343e1d-e9eb-434b-a285-6ca1e3297a3a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.655051} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.895777,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce3721a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce3721a0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce3721a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling 200 10ms","method":"POST","requestID":"ce3721a0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ce38f660-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"932590b5-6302-4c1e-9d64-6b60adc3934d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138878.666925} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.859557,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:07:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ce38f660-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ce38f660-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ce38f660-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling 200 9ms","method":"POST","requestID":"ce38f660-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d4d135b4cb042c4619571bd30130de84","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d4d135b4cb042c4619571bd30130de84","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172"}}},"level":"info","message":"received a callback","requestID":"d4d135b4cb042c4619571bd30130de84"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"d4d135b4cb042c4619571bd30130de84","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"d4d135b4cb042c4619571bd30130de84"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53ab07ae35e3aeb0b677b490445bbd72","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"53ab07ae35e3aeb0b677b490445bbd72","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172"}}},"level":"info","message":"received a callback","requestID":"53ab07ae35e3aeb0b677b490445bbd72"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"cf760a40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcf20399d-8be4-4edf-8468-27fbf5aeb172","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d10380ea-14be-44bf-b9b2-957fb743222f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.7456677} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.684836,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cf760a40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf760a40-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"cf760a40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172 200 9ms","method":"GET","requestID":"cf760a40-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"53ab07ae35e3aeb0b677b490445bbd72","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"53ab07ae35e3aeb0b677b490445bbd72"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cf7aec40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a311dd1-417d-4c4a-9a03-2aa0a6cddc50","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.778241} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.159135,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cf7aec40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cf7aec40-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cf7aec40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling 200 11ms","method":"POST","requestID":"cf7aec40-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cf7ce810-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8107c9f-f317-4199-8b82-333a3686aeba","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.7909136} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.893152,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cf7ce810-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cf7ce810-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cf7ce810-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling 200 12ms","method":"POST","requestID":"cf7ce810-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MH0.-F-ejDX_fqw-6xsjupaCDFDQDfDeLSh2QsBVNlFd80o","level":"info","message":"auth send jwt","requestID":"248702cb7ef09417ac3451a278ab27b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"248702cb7ef09417ac3451a278ab27b8","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","requestID":"248702cb7ef09417ac3451a278ab27b8"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.133962,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"248702cb7ef09417ac3451a278ab27b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138880,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MH0.-F-ejDX_fqw-6xsjupaCDFDQDfDeLSh2QsBVNlFd80o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"248702cb7ef09417ac3451a278ab27b8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","requestID":"248702cb7ef09417ac3451a278ab27b8"} gateway-1 | {"time_local":"16/Jul/2024:14:08:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"248702cb7ef09417ac3451a278ab27b8"} experiment-1 | {"level":"info","message":"GET /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0 200 15ms","method":"GET","requestID":"248702cb7ef09417ac3451a278ab27b8","responseTime":15,"status":200,"url":"/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MH0.-F-ejDX_fqw-6xsjupaCDFDQDfDeLSh2QsBVNlFd80o","level":"info","message":"auth send jwt","requestID":"edaf4e6559d95db92ef3c468ae17082e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"edaf4e6559d95db92ef3c468ae17082e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","requestID":"edaf4e6559d95db92ef3c468ae17082e"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.169316,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"edaf4e6559d95db92ef3c468ae17082e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138880,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MH0.-F-ejDX_fqw-6xsjupaCDFDQDfDeLSh2QsBVNlFd80o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"edaf4e6559d95db92ef3c468ae17082e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Attempting to finish experiment","requestID":"edaf4e6559d95db92ef3c468ae17082e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"cf8832b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.338709,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cf8832b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138880,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MH0.-F-ejDX_fqw-6xsjupaCDFDQDfDeLSh2QsBVNlFd80o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf8832b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"679cbadaeac3f9c360ed390603874345","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"679cbadaeac3f9c360ed390603874345","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172"}}},"level":"info","message":"received a callback","requestID":"679cbadaeac3f9c360ed390603874345"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b7e02a740ba0d236d13b5db64373244","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3b7e02a740ba0d236d13b5db64373244","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcf20399d-8be4-4edf-8468-27fbf5aeb172': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcf20399d-8be4-4edf-8468-27fbf5aeb172","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"4dfe9b3c-bd29-4d07-95d6-70a8029cc70b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.8848605} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172"}}},"level":"info","message":"received a callback","requestID":"3b7e02a740ba0d236d13b5db64373244"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92c83793-2c02-4404-8567-d72d56e3a5a5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.8850029} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"cf8832b0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"cf20399d-8be4-4edf-8468-27fbf5aeb172","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"cf8832b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172 204 42ms","method":"DELETE","requestID":"cf8832b0-437c-11ef-8659-f5877ab12720","responseTime":42,"status":204,"url":"/peerconnections/cf20399d-8be4-4edf-8468-27fbf5aeb172"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"},"level":"info","message":"Successfully finished experiment","requestID":"edaf4e6559d95db92ef3c468ae17082e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cf921dc0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cfdf8f0d-7fa8-4eca-8b01-9fcfb41e24d7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.9309003} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.193859,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cf921dc0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cf921dc0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cf921dc0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling 200 13ms","method":"POST","requestID":"cf921dc0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74526649-2e8d-4f75-9dbc-ff47177937f0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74526649-2e8d-4f75-9dbc-ff47177937f0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"88edc264-3305-450e-aa6e-3ca49f1e6be7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.9381998} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"74ec5924-a678-409e-b4b5-0829f320ed78","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.938397} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"cf9467b0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"edaf4e6559d95db92ef3c468ae17082e","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21bd7bf6-f230-47fd-a107-ddbb4069c64a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138880.9448216} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.55428,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cf9467b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf9467b0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"cf9467b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling 200 11ms","method":"POST","requestID":"cf9467b0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0","requestID":"edaf4e6559d95db92ef3c468ae17082e"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"edaf4e6559d95db92ef3c468ae17082e"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.661","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"804dc2e4ef4601d59436ccd77571cb79"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.653","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"272d9f3d1be24d65fc7472f0904c374c"} experiment-1 | {"level":"info","message":"DELETE /experiments/74526649-2e8d-4f75-9dbc-ff47177937f0 204 158ms","method":"DELETE","requestID":"edaf4e6559d95db92ef3c468ae17082e","responseTime":158,"status":204,"url":"/experiments/74526649-2e8d-4f75-9dbc-ff47177937f0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"679cbadaeac3f9c360ed390603874345","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"679cbadaeac3f9c360ed390603874345"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"3b7e02a740ba0d236d13b5db64373244","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"3b7e02a740ba0d236d13b5db64373244"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"a21cf1688c671f4792aff12dca0b6ed8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a21cf1688c671f4792aff12dca0b6ed8","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a21cf1688c671f4792aff12dca0b6ed8"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c02e4c5e-f96f-45b8-9d76-3b3de7ff18c8' closed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.907444,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"a21cf1688c671f4792aff12dca0b6ed8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a21cf1688c671f4792aff12dca0b6ed8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/68ff3d61-3c94-4fe6-ac12-4ced5a51ea1b' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9a755b99-bbad-47aa-8c4e-c7855997c1a8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.0334952} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a21cf1688c671f4792aff12dca0b6ed8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c5d9e23-1b38-419b-947c-71a83a0bd174","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.0399296} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a21cf1688c671f4792aff12dca0b6ed8","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"33f4a155-157e-488d-ab2c-537addbd4dc2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.050665} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd1cf321-7cd5-4993-a9c9-7d8d375fd3d8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.0507846} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a21cf1688c671f4792aff12dca0b6ed8","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.050624928Z"}]},"request_id":"e6285505-d6c8-4f30-a4a8-8013b331b76d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.056049} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a21cf1688c671f4792aff12dca0b6ed8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a21cf1688c671f4792aff12dca0b6ed8"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a21cf1688c671f4792aff12dca0b6ed8"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"a21cf1688c671f4792aff12dca0b6ed8","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"e910b453872dea681297c058623e63b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e910b453872dea681297c058623e63b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e910b453872dea681297c058623e63b9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.788063,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e910b453872dea681297c058623e63b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e910b453872dea681297c058623e63b9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23fa154c-e2fb-44a4-8243-ff4599b75646","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.0864582} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e910b453872dea681297c058623e63b9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dcd20668-f881-4c14-8862-3267f591086c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.0918252} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e910b453872dea681297c058623e63b9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"91b4768b-bbbc-4b50-8dc8-0856ab162c40","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.1038039} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0d308cb-8129-4c16-aac4-5d1de6216e3a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.1040523} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"e910b453872dea681297c058623e63b9","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.103749768Z"}]},"request_id":"23d7980a-09b6-4410-beef-58cca2c2297d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.1087801} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e910b453872dea681297c058623e63b9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e910b453872dea681297c058623e63b9"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"e910b453872dea681297c058623e63b9","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e910b453872dea681297c058623e63b9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"5dbde2cd82d594a0f170535b5afeda96"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5dbde2cd82d594a0f170535b5afeda96","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"ae63849161d3a6bacbeb11eeff914eb0"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5dbde2cd82d594a0f170535b5afeda96"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae63849161d3a6bacbeb11eeff914eb0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ae63849161d3a6bacbeb11eeff914eb0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.856102,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5dbde2cd82d594a0f170535b5afeda96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5dbde2cd82d594a0f170535b5afeda96","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.748353,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ae63849161d3a6bacbeb11eeff914eb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae63849161d3a6bacbeb11eeff914eb0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.103749768Z"}]},"request_id":"cc600194-4b00-4f31-96ce-30d25a1d9584","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.5944102} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5dbde2cd82d594a0f170535b5afeda96","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.050624928Z"}]},"request_id":"7364ca48-c099-4680-884a-3c65e74ac3f3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.5951304} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae63849161d3a6bacbeb11eeff914eb0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3bbe2792-4bfe-4ef5-8131-85b76a395432","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.5987678} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5dbde2cd82d594a0f170535b5afeda96","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96504f20-1ce2-4d35-9aea-13e7e76daf8c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.6001418} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ae63849161d3a6bacbeb11eeff914eb0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.050624928Z"}]},"request_id":"27c8baa4-75b7-4c83-8aa0-c3d1554687d4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.6030543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae63849161d3a6bacbeb11eeff914eb0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ae63849161d3a6bacbeb11eeff914eb0"} device-1 | {"level":"info","message":"PATCH /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9 200 22ms","method":"PATCH","requestID":"ae63849161d3a6bacbeb11eeff914eb0","responseTime":22,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ae63849161d3a6bacbeb11eeff914eb0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"09271f228d584a7c624017b912f71e1d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"09271f228d584a7c624017b912f71e1d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"09271f228d584a7c624017b912f71e1d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.614728,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"09271f228d584a7c624017b912f71e1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"09271f228d584a7c624017b912f71e1d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.103749768Z"}]},"request_id":"2972721d-833d-4032-86a0-bbe064cf368b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.6149533} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5dbde2cd82d594a0f170535b5afeda96","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5dbde2cd82d594a0f170535b5afeda96"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.040","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5dbde2cd82d594a0f170535b5afeda96"} device-1 | {"level":"info","message":"PATCH /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a 200 35ms","method":"PATCH","requestID":"5dbde2cd82d594a0f170535b5afeda96","responseTime":35,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"26d16d1d5124f05203af9b4558a2ce0f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"26d16d1d5124f05203af9b4558a2ce0f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"26d16d1d5124f05203af9b4558a2ce0f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.773368,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"26d16d1d5124f05203af9b4558a2ce0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"26d16d1d5124f05203af9b4558a2ce0f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"09271f228d584a7c624017b912f71e1d"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"09271f228d584a7c624017b912f71e1d"} device-1 | {"level":"info","message":"POST /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/websocket 200 18ms","method":"POST","requestID":"09271f228d584a7c624017b912f71e1d","responseTime":18,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"26d16d1d5124f05203af9b4558a2ce0f"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"26d16d1d5124f05203af9b4558a2ce0f"} device-1 | {"level":"info","message":"POST /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/websocket 200 16ms","method":"POST","requestID":"26d16d1d5124f05203af9b4558a2ce0f","responseTime":16,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"39804b0c79530de54e49b3866db0bdd6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"39804b0c79530de54e49b3866db0bdd6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"39804b0c79530de54e49b3866db0bdd6"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631683,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"39804b0c79530de54e49b3866db0bdd6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"39804b0c79530de54e49b3866db0bdd6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.050624928Z"}]},"request_id":"417e0286-10db-42af-81c9-e23d27ccaa1c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.6658964} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"39804b0c79530de54e49b3866db0bdd6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"39804b0c79530de54e49b3866db0bdd6"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39804b0c79530de54e49b3866db0bdd6"} device-1 | {"level":"info","message":"GET /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9? 200 10ms","method":"GET","requestID":"39804b0c79530de54e49b3866db0bdd6","responseTime":10,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661001,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.103749768Z"}]},"request_id":"2b6d6f43-4469-4fcf-bc74-d96881083ccc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.6822162} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce"} device-1 | {"level":"info","message":"GET /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a? 200 11ms","method":"GET","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce","responseTime":11,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b01fa661cf931fbfdd81ff6ff4ab1ce"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.675795,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"3ebf4258d3bcd6bb1acb2a240d04016f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Attempting to run experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Attempting to book experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully booked experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d00cf310-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d00d1a20-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233301,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d00cf310-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d00cf310-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.714638,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d00d1a20-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d00d1a20-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.050624928Z"}]},"request_id":"256bce5e-070e-4db9-8658-031b75c4a396","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.7400491} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d00cf310-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.103749768Z"}]},"request_id":"f4c7c035-1f46-4d5b-a528-be9467d9406c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.7414618} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d00d1a20-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d00cf310-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9? 200 19ms","method":"GET","requestID":"d00cf310-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d00d1a20-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a? 200 19ms","method":"GET","requestID":"d00d1a20-437c-11ef-8659-f5877ab12720","responseTime":19,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Setting up experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully set up experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d016de20-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d0170530-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0175350-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully running experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.133407,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d016de20-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d016de20-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852753,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d0170530-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d0170530-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.57794,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b19977d-301f-4f75-a979-eb6bf2b55238","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.805693} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.050624928Z"}]},"request_id":"af49f52c-f0f8-4109-a6e9-d335cae0e0d2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.8076742} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d0175350-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d0175350-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d016de20-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.103749768Z"}]},"request_id":"586c200a-9ab7-49e8-a826-c85e84563340","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.8089097} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"d0170530-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0175350-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling 200 18ms","method":"POST","requestID":"d0175350-437c-11ef-8659-f5877ab12720","responseTime":18,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d016de20-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9? 200 22ms","method":"GET","requestID":"d016de20-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d01aaeb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d0170530-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a? 200 27ms","method":"GET","requestID":"d0170530-437c-11ef-8659-f5877ab12720","responseTime":27,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"c304694a-7a67-46b6-8cba-eb5876084822","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.8230402} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a0b0f9e-386e-43ac-ab80-80ad2763aa55","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.8232403} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d01b9910-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbd23129-bf2f-4dc5-aa8d-51d6b6dc6803","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.826671} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.770052,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d01aaeb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d01aaeb0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9bb21451-d4be-4e99-b624-0acbf516539d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.831066} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.646011,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d01b9910-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d01aaeb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling 200 14ms","method":"POST","requestID":"d01aaeb0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d01b9910-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d01b9910-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} device-1 | {"level":"info","message":"POST /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling 200 11ms","method":"POST","requestID":"d01b9910-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 145ms","method":"POST","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f","responseTime":145,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d01dbbf0-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a66f8ad-46d0-4f6b-ba13-83b7c9fbd49a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.844896} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.178189,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d01dbbf0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d01dbbf0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.951301,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d01dbbf0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling 200 11ms","method":"POST","requestID":"d01dbbf0-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.050624928Z"}]},"request_id":"a4db9986-bc81-4533-855e-2883223d5361","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.8513227} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Building connection plan","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"5d4ad390-ccda-4ac1-8684-13eb830030d8"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"e86463ae-c48f-49c2-a20c-2cafe40597a8"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"a38ec1a2-9d98-4f16-81c3-3533401f0edb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d02005e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3"} device-1 | {"level":"info","message":"GET /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9? 200 14ms","method":"GET","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3","responseTime":14,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7f6f0b5aeee133ba1d60fe270ace5b3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.731886,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d02005e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d02005e0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc","level":"info","message":"auth send jwt","requestID":"d79b8523f2994b32376aa62cc01938f3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d79b8523f2994b32376aa62cc01938f3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d79b8523f2994b32376aa62cc01938f3"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.85117,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d79b8523f2994b32376aa62cc01938f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138881,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4MX0.7EE0Z5sI6rorjsFSBDRpBBgsdtWKgvFaF7gf0hgNyxc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d79b8523f2994b32376aa62cc01938f3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"785f5cd8-2b90-4996-a20c-3ba6923d3c9e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.8678088} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"569f13ce-7206-47c3-92c3-780950ab9efa","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.868251} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d02005e0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:01.103749768Z"}]},"request_id":"b6a979c0-1b65-45aa-af1e-4a655cb82837","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.872262} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d79b8523f2994b32376aa62cc01938f3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d02005e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d02005e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c'","requestID":"d02005e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c'","requestID":"d02005e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d02005e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 29ms","method":"POST","requestID":"d02005e0-437c-11ef-8659-f5877ab12720","responseTime":29,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d79b8523f2994b32376aa62cc01938f3"} gateway-1 | {"time_local":"16/Jul/2024:14:08:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d79b8523f2994b32376aa62cc01938f3"} device-1 | {"level":"info","message":"GET /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a? 200 21ms","method":"GET","requestID":"d79b8523f2994b32376aa62cc01938f3","responseTime":21,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d02005e0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3ebf4258d3bcd6bb1acb2a240d04016f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d0289160-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5c1ef15-05e9-4dd7-9948-94dfd8191170","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.9149098} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.775148,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d0289160-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d0289160-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d0289160-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling 200 9ms","method":"POST","requestID":"d0289160-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d02a1800-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93710148-25e3-4ad2-b35d-e4216e5b70d4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138881.92472} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.232253,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d02a1800-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d02a1800-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d02a1800-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling 200 8ms","method":"POST","requestID":"d02a1800-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"acf393b58e5a345a6649e870331559e8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"acf393b58e5a345a6649e870331559e8","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c"}}},"level":"info","message":"received a callback","requestID":"acf393b58e5a345a6649e870331559e8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"acf393b58e5a345a6649e870331559e8","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"acf393b58e5a345a6649e870331559e8"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6143ada8bd22269c6fe12a4f6cb3b19a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6143ada8bd22269c6fe12a4f6cb3b19a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c"}}},"level":"info","message":"received a callback","requestID":"6143ada8bd22269c6fe12a4f6cb3b19a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d1681640-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16b28eb2-92a3-4017-bea8-eb8316c5913c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea6c9c0a-aae0-48d2-a4eb-4da67aaeaecd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.0112798} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.95532,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d1681640-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d1681640-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d1681640-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c 200 13ms","method":"GET","requestID":"d1681640-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"6143ada8bd22269c6fe12a4f6cb3b19a","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"6143ada8bd22269c6fe12a4f6cb3b19a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d16e57d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28233637-3e2e-4716-b8c2-c1fbb9f7aea8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.051797} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.937702,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d16e57d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d16e57d0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d16e57d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling 200 13ms","method":"POST","requestID":"d16e57d0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d170c8d0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c116f6cc-46e5-4227-9098-0add72e644d9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.0678573} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.911986,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d170c8d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d170c8d0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d170c8d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling 200 13ms","method":"POST","requestID":"d170c8d0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw","level":"info","message":"auth send jwt","requestID":"af8a77c789ab232f37a71c06e8d575d0"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"af8a77c789ab232f37a71c06e8d575d0","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","requestID":"af8a77c789ab232f37a71c06e8d575d0"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.270144,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af8a77c789ab232f37a71c06e8d575d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138884,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af8a77c789ab232f37a71c06e8d575d0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","requestID":"af8a77c789ab232f37a71c06e8d575d0"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af8a77c789ab232f37a71c06e8d575d0"} experiment-1 | {"level":"info","message":"GET /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2 200 15ms","method":"GET","requestID":"af8a77c789ab232f37a71c06e8d575d0","responseTime":15,"status":200,"url":"/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw","level":"info","message":"auth send jwt","requestID":"5201276cdf27e20162acdf0d6bce672b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5201276cdf27e20162acdf0d6bce672b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","requestID":"5201276cdf27e20162acdf0d6bce672b"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.156495,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5201276cdf27e20162acdf0d6bce672b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138884,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5201276cdf27e20162acdf0d6bce672b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Attempting to finish experiment","requestID":"5201276cdf27e20162acdf0d6bce672b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d17b9e40-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.186246,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d17b9e40-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138884,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d17b9e40-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dbdfc9868df112f9a8f75c3bdb639c9e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dbdfc9868df112f9a8f75c3bdb639c9e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16b28eb2-92a3-4017-bea8-eb8316c5913c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16b28eb2-92a3-4017-bea8-eb8316c5913c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"d99076dc-a933-4d32-a376-d229e60423ca","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.158082} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1a793929c75394575ffa66cd8d93a5fe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c"}}},"level":"info","message":"received a callback","requestID":"dbdfc9868df112f9a8f75c3bdb639c9e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ea9476b-d4e9-42a1-8ac2-4ec8fd73374a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.1587107} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1a793929c75394575ffa66cd8d93a5fe","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d17b9e40-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c"}}},"level":"info","message":"received a callback","requestID":"1a793929c75394575ffa66cd8d93a5fe"} device-1 | {"data":{"peerconnection":"16b28eb2-92a3-4017-bea8-eb8316c5913c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d17b9e40-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c 204 47ms","method":"DELETE","requestID":"d17b9e40-437c-11ef-8659-f5877ab12720","responseTime":47,"status":204,"url":"/peerconnections/16b28eb2-92a3-4017-bea8-eb8316c5913c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"},"level":"info","message":"Successfully finished experiment","requestID":"5201276cdf27e20162acdf0d6bce672b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1864ca0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F36d17c0e-3aa0-4898-9df4-8dc83041309a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9104787-cda5-4b5f-bef2-4dee85a1eed8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.2089994} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.641862,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d1864ca0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d1864ca0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1864ca0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling 200 13ms","method":"POST","requestID":"d1864ca0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a/signaling"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fdc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"fe520a74-45f6-4413-94c7-9dab83aeac53","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.2174804} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d1889690-437c-11ef-8659-f5877ab12720"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d85ab4bb-db93-46f7-a8ac-5f68ce7507fd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.2179074} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"5201276cdf27e20162acdf0d6bce672b","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cae209a-4e33-46ee-a2e6-e94b66ad033c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.2245562} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.576697,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d1889690-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d1889690-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d1889690-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling 200 14ms","method":"POST","requestID":"d1889690-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2","requestID":"5201276cdf27e20162acdf0d6bce672b"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5201276cdf27e20162acdf0d6bce672b"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.652","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cd9e4ffbb9b60c74f5254eee8bb78722"} experiment-1 | {"level":"info","message":"DELETE /experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2 204 166ms","method":"DELETE","requestID":"5201276cdf27e20162acdf0d6bce672b","responseTime":166,"status":204,"url":"/experiments/dc5ae8bc-2b23-4385-ab1f-fc951fa7fbd2"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.644","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"d6f6e7f8897e8b1285302553db6cd757"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"dbdfc9868df112f9a8f75c3bdb639c9e","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"dbdfc9868df112f9a8f75c3bdb639c9e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"1a793929c75394575ffa66cd8d93a5fe","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"1a793929c75394575ffa66cd8d93a5fe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw","level":"info","message":"auth send jwt","requestID":"d31d5c764a9e8c117d9b621751ea44ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d31d5c764a9e8c117d9b621751ea44ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/36d17c0e-3aa0-4898-9df4-8dc83041309a' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"d31d5c764a9e8c117d9b621751ea44ed"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.896937,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d31d5c764a9e8c117d9b621751ea44ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138884,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d31d5c764a9e8c117d9b621751ea44ed","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/08f34c5d-3ccb-40e4-9f5d-34a530eae9c9' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"375575d6-fbfc-46c9-a296-3b38f6968980","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.317919} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d31d5c764a9e8c117d9b621751ea44ed","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21723fe7-ac49-436e-90e5-26a0ce7ffc1b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.3244681} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d31d5c764a9e8c117d9b621751ea44ed","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"66dde952-cda9-49dc-b82b-70c9e8d42288","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.337387} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c9668ae-1141-47be-ab49-bb7f41932201","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.337765} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"d31d5c764a9e8c117d9b621751ea44ed","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.337357433Z"}]},"request_id":"09bd3c28-f288-482d-997e-ca7f14251951","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.342735} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d31d5c764a9e8c117d9b621751ea44ed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d31d5c764a9e8c117d9b621751ea44ed"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d31d5c764a9e8c117d9b621751ea44ed"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"d31d5c764a9e8c117d9b621751ea44ed","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw","level":"info","message":"auth send jwt","requestID":"af2508a30b849d1d48076045ab969ffc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"af2508a30b849d1d48076045ab969ffc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"af2508a30b849d1d48076045ab969ffc"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.704461,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"af2508a30b849d1d48076045ab969ffc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138884,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4NH0.TgKjC3O60fL0wo10ZmnOqbFZDh3zsbmX6hRpTMCerjw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"af2508a30b849d1d48076045ab969ffc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8a50918b-6401-4019-ba15-65ab3468ddf4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.3677065} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af2508a30b849d1d48076045ab969ffc","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"319fa2dd-b7aa-485c-afef-18f7ca232ca1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.3726408} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"af2508a30b849d1d48076045ab969ffc","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"a9152bd0-fb01-4f81-be8e-ae223794c5bd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.3882992} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37a42d32-5087-4bcc-94c0-7d606cd0c749","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.388456} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"af2508a30b849d1d48076045ab969ffc","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.388264893Z"}]},"request_id":"b7709744-e6eb-4df1-bea7-1c4016e10171","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138884.3929014} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"af2508a30b849d1d48076045ab969ffc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"af2508a30b849d1d48076045ab969ffc"} gateway-1 | {"time_local":"16/Jul/2024:14:08:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af2508a30b849d1d48076045ab969ffc"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"af2508a30b849d1d48076045ab969ffc","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8cff65969f78023f2c545a9a71669270","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8cff65969f78023f2c545a9a71669270","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8cff65969f78023f2c545a9a71669270"} device-1 | {"level":"info","message":"OPTIONS /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/websocket 200 1ms","method":"OPTIONS","requestID":"8cff65969f78023f2c545a9a71669270","responseTime":1,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"ad901dcc11ea58f30cb454d62de4274c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ad901dcc11ea58f30cb454d62de4274c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ad901dcc11ea58f30cb454d62de4274c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.236782,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ad901dcc11ea58f30cb454d62de4274c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ad901dcc11ea58f30cb454d62de4274c","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5b650be55de38c93d0781a02955d79af","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"5b650be55de38c93d0781a02955d79af","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5b650be55de38c93d0781a02955d79af"} device-1 | {"level":"info","message":"OPTIONS /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/websocket 200 1ms","method":"OPTIONS","requestID":"5b650be55de38c93d0781a02955d79af","responseTime":1,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ad901dcc11ea58f30cb454d62de4274c"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ad901dcc11ea58f30cb454d62de4274c"} device-1 | {"level":"info","message":"POST /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/websocket 200 19ms","method":"POST","requestID":"ad901dcc11ea58f30cb454d62de4274c","responseTime":19,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"d9d8e66b4b4923b062d466b2a8522aff"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d9d8e66b4b4923b062d466b2a8522aff","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d9d8e66b4b4923b062d466b2a8522aff"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891754,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d9d8e66b4b4923b062d466b2a8522aff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9d8e66b4b4923b062d466b2a8522aff","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d9d8e66b4b4923b062d466b2a8522aff"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d9d8e66b4b4923b062d466b2a8522aff"} device-1 | {"level":"info","message":"POST /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/websocket 200 22ms","method":"POST","requestID":"d9d8e66b4b4923b062d466b2a8522aff","responseTime":22,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"77f09e035c61680b09fc51f82ff926a1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"77f09e035c61680b09fc51f82ff926a1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77f09e035c61680b09fc51f82ff926a1"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693019,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"77f09e035c61680b09fc51f82ff926a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"77f09e035c61680b09fc51f82ff926a1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.337357433Z"}]},"request_id":"391c057d-bb7e-4bfd-835e-b4d7a51c0c9f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.3699806} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"77f09e035c61680b09fc51f82ff926a1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77f09e035c61680b09fc51f82ff926a1"} device-1 | {"level":"info","message":"GET /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f? 200 14ms","method":"GET","requestID":"77f09e035c61680b09fc51f82ff926a1","responseTime":14,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77f09e035c61680b09fc51f82ff926a1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"87428c223cf04a733c769f7e9853c1ac"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87428c223cf04a733c769f7e9853c1ac","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"87428c223cf04a733c769f7e9853c1ac"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.80259,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"87428c223cf04a733c769f7e9853c1ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"87428c223cf04a733c769f7e9853c1ac","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.388264893Z"}]},"request_id":"efa7751f-67ed-4840-b309-e9c98e76e52f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.3851562} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"87428c223cf04a733c769f7e9853c1ac","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"87428c223cf04a733c769f7e9853c1ac"} device-1 | {"level":"info","message":"GET /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41? 200 11ms","method":"GET","requestID":"87428c223cf04a733c769f7e9853c1ac","responseTime":11,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87428c223cf04a733c769f7e9853c1ac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.860683,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Attempting to run experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Attempting to book experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully booked experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2da6af0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2da9200-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.593014,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2da6af0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d2da6af0-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.60714,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2da9200-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d2da9200-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.337357433Z"}]},"request_id":"f30ed052-bf95-4789-bfcf-c5bf18a46680","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.4385192} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d2da6af0-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.388264893Z"}]},"request_id":"cc49d364-f29c-4b0c-aa53-35e12e97d1cd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.439205} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d2da9200-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2da6af0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f? 200 14ms","method":"GET","requestID":"d2da6af0-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2da9200-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41? 200 14ms","method":"GET","requestID":"d2da9200-437c-11ef-8659-f5877ab12720","responseTime":14,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Setting up experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully set up experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2e34490-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2e392b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2e3e0d0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully running experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20534,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2e34490-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d2e34490-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202692,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2e392b0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d2e392b0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48674","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.337357433Z"}]},"request_id":"afd8fbd3-0b8f-4437-b310-be92fc701c2f","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5067773} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d2e34490-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.388264893Z"}]},"request_id":"70445a52-1f4a-4400-a9b5-8080042dca37","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5097342} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a5f8cc5-36d4-4104-8163-612acaba1b93","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.510631} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d2e392b0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48674","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.299699,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2e3e0d0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"d2e3e0d0-437c-11ef-8659-f5877ab12720","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f578b4c-020b-4146-9581-c1e18f0734ad#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f578b4c-020b-4146-9581-c1e18f0734ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"450cdd1d-730b-4098-98f6-0926de579843","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5176463} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"601b98d5-50c1-4151-b840-94ea9de7cc60","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5177782} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2e34490-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f? 200 30ms","method":"GET","requestID":"d2e34490-437c-11ef-8659-f5877ab12720","responseTime":30,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2e392b0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41? 200 29ms","method":"GET","requestID":"d2e392b0-437c-11ef-8659-f5877ab12720","responseTime":29,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2e3e0d0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling 200 28ms","method":"POST","requestID":"d2e3e0d0-437c-11ef-8659-f5877ab12720","responseTime":28,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2e84da0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2e8e9e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"acd8d3f0-cfb9-473f-9923-c39856487d46","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5275395} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.095976,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2e84da0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"level":"info","message":"POST /experiments? 201 136ms","method":"POST","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea","responseTime":136,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d2e84da0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"116990d1-8c33-4314-a8ae-11995c7d2aa0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.532762} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.573698,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2e84da0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2e8e9e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"POST /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling 200 12ms","method":"POST","requestID":"d2e84da0-437c-11ef-8659-f5877ab12720","responseTime":12,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d2e8e9e0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2ea7080-437c-11ef-8659-f5877ab12720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2e8e9e0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling 200 13ms","method":"POST","requestID":"d2e8e9e0-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"438a8a25-0e9c-4a34-9b28-1cc41613d96d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5415523} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.143238,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2ea7080-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d2ea7080-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.640712,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"cc2cbf485e1774a9e5507f2f5f6b104e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2ea7080-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling 200 11ms","method":"POST","requestID":"d2ea7080-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.337357433Z"}]},"request_id":"15522441-cf5f-4a56-94e9-fa4a822bf006","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5483878} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Building connection plan","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"ce1b8684-ddf9-43cc-b77a-d85dc4e9ac74"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"c56464db-80bd-428f-a3af-0281fbd571f4"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"173c5f72-2ef4-4058-9d8b-ec50ba0d52d5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e"} device-1 | {"level":"info","message":"GET /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f? 200 15ms","method":"GET","requestID":"cc2cbf485e1774a9e5507f2f5f6b104e","responseTime":15,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f?"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.035253,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2ecba70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"625665d4-4530-4185-8b53-5382b681de17","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5634682} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0dca99e5-d9f9-4238-8776-518cab7a4d5c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5638814} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805726,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"5b72f6dd33886cf48d7b453e71d6cfc2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:04.388264893Z"}]},"request_id":"04cbfdca-76d3-4e25-b956-469df6853299","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.5703895} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8'","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8'","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2"} device-1 | {"level":"info","message":"GET /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41? 200 22ms","method":"GET","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2","responseTime":22,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b72f6dd33886cf48d7b453e71d6cfc2"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d2ecba70-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d20dd3a18f1d1e43a0dc0e90aad551ea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2f51ee0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"870bfb68-cef1-4c46-af2c-aa0c1f197bf7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.610018} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.264141,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2f51ee0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2f51ee0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2f51ee0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling 200 7ms","method":"POST","requestID":"d2f51ee0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d2f67e70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5cc5fb20-6319-455f-ab44-f60e08a13966","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.6198797} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.324804,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d2f67e70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2f67e70-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d2f67e70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling 200 8ms","method":"POST","requestID":"d2f67e70-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"781b9f05a119428fbfea4fe977be9bf9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"781b9f05a119428fbfea4fe977be9bf9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8"}}},"level":"info","message":"received a callback","requestID":"781b9f05a119428fbfea4fe977be9bf9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"781b9f05a119428fbfea4fe977be9bf9","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"781b9f05a119428fbfea4fe977be9bf9"} device-1 | {"data":{"peerconnection":"c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"244aa1569109ea1d5d33c1678fece795","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"244aa1569109ea1d5d33c1678fece795","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8"}}},"level":"info","message":"received a callback","requestID":"244aa1569109ea1d5d33c1678fece795"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d3043a10-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc65dd2dd-732f-4929-bd1d-3388fb1f9ec8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5cc470c-396e-4310-a4e8-8639b8958440","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.7099464} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.181489,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d3043a10-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d3043a10-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d3043a10-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8 200 8ms","method":"GET","requestID":"d3043a10-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"244aa1569109ea1d5d33c1678fece795","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"244aa1569109ea1d5d33c1678fece795"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3087fd0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ca84722-3c14-4332-a52b-8c3527fcd9be","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.736818} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.107577,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d3087fd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d3087fd0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3087fd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling 200 7ms","method":"POST","requestID":"d3087fd0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d309df60-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36c12888-c3ee-4e14-b5d1-952e374f38ee","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.7460537} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.153701,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d309df60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d309df60-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d309df60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling 200 7ms","method":"POST","requestID":"d309df60-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"ac9476088a725095cc1e8c8b39aa8474"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ac9476088a725095cc1e8c8b39aa8474","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","requestID":"ac9476088a725095cc1e8c8b39aa8474"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.259114,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"ac9476088a725095cc1e8c8b39aa8474","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ac9476088a725095cc1e8c8b39aa8474","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","requestID":"ac9476088a725095cc1e8c8b39aa8474"} experiment-1 | {"level":"info","message":"GET /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad 200 9ms","method":"GET","requestID":"ac9476088a725095cc1e8c8b39aa8474","responseTime":9,"status":200,"url":"/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac9476088a725095cc1e8c8b39aa8474"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"996ae3171be09dc079dd389e99d6015d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"996ae3171be09dc079dd389e99d6015d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","requestID":"996ae3171be09dc079dd389e99d6015d"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.640956,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"996ae3171be09dc079dd389e99d6015d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"996ae3171be09dc079dd389e99d6015d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Attempting to finish experiment","requestID":"996ae3171be09dc079dd389e99d6015d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d310e440-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.754888,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d310e440-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d310e440-437c-11ef-8659-f5877ab12720","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c65dd2dd-732f-4929-bd1d-3388fb1f9ec8","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc65dd2dd-732f-4929-bd1d-3388fb1f9ec8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc65dd2dd-732f-4929-bd1d-3388fb1f9ec8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"56b550ec-de67-47a9-b9ab-4192a60d9673","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.80417} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"efea1f42476c027ea920ce1327895d81","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"efea1f42476c027ea920ce1327895d81","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f19c8258-1141-409d-8cae-901d917222f3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.8045871} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7265d6786b990c7d8312ade876804d65","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d310e440-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7265d6786b990c7d8312ade876804d65","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8"}}},"level":"info","message":"received a callback","requestID":"efea1f42476c027ea920ce1327895d81"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8"}}},"level":"info","message":"received a callback","requestID":"7265d6786b990c7d8312ade876804d65"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d310e440-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8 204 21ms","method":"DELETE","requestID":"d310e440-437c-11ef-8659-f5877ab12720","responseTime":21,"status":204,"url":"/peerconnections/c65dd2dd-732f-4929-bd1d-3388fb1f9ec8"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"},"level":"info","message":"Successfully finished experiment","requestID":"996ae3171be09dc079dd389e99d6015d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d316b0a0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe11da31a-8e78-4e7c-92f9-00ebd9ea361f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85e33072-3c1a-4f77-bf51-36705e9fcabc","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.8329692} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.56378,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d316b0a0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d316b0a0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d316b0a0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling 200 10ms","method":"POST","requestID":"d316b0a0-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d3188560-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f578b4c-020b-4146-9581-c1e18f0734ad': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2f578b4c-020b-4146-9581-c1e18f0734ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"4e602699-a350-42ab-8e4e-ff54ddeafb6b","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.841262} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20b5cdb8-cf8b-4ec8-9a4b-5dd7c27fd7f8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.8416092} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"996ae3171be09dc079dd389e99d6015d","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e646106a-35f6-41f6-9d5a-f251934f4a91","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.8434908} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.333965,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d3188560-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d3188560-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d3188560-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling 200 9ms","method":"POST","requestID":"d3188560-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad","requestID":"996ae3171be09dc079dd389e99d6015d"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"996ae3171be09dc079dd389e99d6015d"} experiment-1 | {"level":"info","message":"DELETE /experiments/2f578b4c-020b-4146-9581-c1e18f0734ad 204 119ms","method":"DELETE","requestID":"996ae3171be09dc079dd389e99d6015d","responseTime":119,"status":204,"url":"/experiments/2f578b4c-020b-4146-9581-c1e18f0734ad"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.099","http_referrer":"","http_user_agent":"node-fetch","requestID":"efea1f42476c027ea920ce1327895d81"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 96ms","method":"POST","requestID":"efea1f42476c027ea920ce1327895d81","responseTime":96,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 96ms","method":"POST","requestID":"7265d6786b990c7d8312ade876804d65","responseTime":96,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.100","http_referrer":"","http_user_agent":"node-fetch","requestID":"7265d6786b990c7d8312ade876804d65"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.567","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f337f26de8abf4ac54ee03acae16b30a"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.593","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c33398ed9bb851f5118a675e5ac527af"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"b721b59dc87bad3476d6cc149e52ec73"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"b721b59dc87bad3476d6cc149e52ec73","responseTime":11,"status":200,"url":"/auth"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e11da31a-8e78-4e7c-92f9-00ebd9ea361f' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"b721b59dc87bad3476d6cc149e52ec73"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.928111,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"b721b59dc87bad3476d6cc149e52ec73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b721b59dc87bad3476d6cc149e52ec73","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1e50e03b-ac00-4aee-a431-a8ec2a1c3d41' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe040b3be-3a0d-46d0-b100-aa2c17a7fd51","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e09ebebd-15f4-455d-85a3-df4080de3bbd","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9363854} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b721b59dc87bad3476d6cc149e52ec73","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"717dbf3d-aa41-4298-b8ed-302e73ff8f99","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9403927} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b721b59dc87bad3476d6cc149e52ec73","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe040b3be-3a0d-46d0-b100-aa2c17a7fd51","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"77f225f0-8673-48b4-b958-6443564c4482","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9507039} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbaf2023-8ea6-4bb5-b7ab-4a864d5269a6","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9519508} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b721b59dc87bad3476d6cc149e52ec73","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe040b3be-3a0d-46d0-b100-aa2c17a7fd51","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe040b3be-3a0d-46d0-b100-aa2c17a7fd51","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.950674297Z"}]},"request_id":"99429979-b7af-4232-8d00-43cf34f91ad4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9553523} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b721b59dc87bad3476d6cc149e52ec73","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b721b59dc87bad3476d6cc149e52ec73"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"b721b59dc87bad3476d6cc149e52ec73","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"315","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b721b59dc87bad3476d6cc149e52ec73"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4","level":"info","message":"auth send jwt","requestID":"9572073448778b73b455fa1d579aa2e9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9572073448778b73b455fa1d579aa2e9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9572073448778b73b455fa1d579aa2e9"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.665855,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9572073448778b73b455fa1d579aa2e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138886,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4Nn0.vCPNe81h5YNPJRyli81RUsS_GcuEKXdASLxlXYAeUM4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9572073448778b73b455fa1d579aa2e9","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"64a47ae1-4e9f-4289-bf82-fd0e96b95b8a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.979049} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9572073448778b73b455fa1d579aa2e9","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d7860e9-f970-4432-9480-412d483ec31c","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9823804} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"9572073448778b73b455fa1d579aa2e9","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"62a15aab-1abb-44a2-ba9f-0a2b7e47360d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9913905} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6295bb09-d3ff-4e7f-a43f-a3643f1d1e7e","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.991523} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"9572073448778b73b455fa1d579aa2e9","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.991367756Z"}]},"request_id":"ce487d38-ac38-4043-8be9-61988658e178","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138886.9946628} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9572073448778b73b455fa1d579aa2e9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9572073448778b73b455fa1d579aa2e9"} gateway-1 | {"time_local":"16/Jul/2024:14:08:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9572073448778b73b455fa1d579aa2e9"} device-1 | {"level":"info","message":"POST /devices? 201 32ms","method":"POST","requestID":"9572073448778b73b455fa1d579aa2e9","responseTime":32,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03afc5196d5ffb68a894be0f356d7a94","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"03afc5196d5ffb68a894be0f356d7a94","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"16/Jul/2024:14:08:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"03afc5196d5ffb68a894be0f356d7a94"} device-1 | {"level":"info","message":"OPTIONS /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/websocket 200 2ms","method":"OPTIONS","requestID":"03afc5196d5ffb68a894be0f356d7a94","responseTime":2,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OH0.cneOz4MK3dsWFMxed73kCO4aRCkhpSgzk2BfwbhpZEI","level":"info","message":"auth send jwt","requestID":"f4d59e01c36dd6d37ac9f24cdc57620c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f4d59e01c36dd6d37ac9f24cdc57620c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f4d59e01c36dd6d37ac9f24cdc57620c"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161868,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"f4d59e01c36dd6d37ac9f24cdc57620c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138888,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OH0.cneOz4MK3dsWFMxed73kCO4aRCkhpSgzk2BfwbhpZEI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4d59e01c36dd6d37ac9f24cdc57620c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f4d59e01c36dd6d37ac9f24cdc57620c"} gateway-1 | {"time_local":"16/Jul/2024:14:08:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f4d59e01c36dd6d37ac9f24cdc57620c"} device-1 | {"level":"info","message":"POST /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/websocket 200 21ms","method":"POST","requestID":"f4d59e01c36dd6d37ac9f24cdc57620c","responseTime":21,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI","level":"info","message":"auth send jwt","requestID":"82c7b5ba5578517495119dc00793d483"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"82c7b5ba5578517495119dc00793d483","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"82c7b5ba5578517495119dc00793d483"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219037,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"82c7b5ba5578517495119dc00793d483","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"82c7b5ba5578517495119dc00793d483","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.991367756Z"}]},"request_id":"67464ac4-101f-4576-847c-1d875b7782da","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.0435095} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82c7b5ba5578517495119dc00793d483","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"82c7b5ba5578517495119dc00793d483"} device-1 | {"level":"info","message":"GET /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad? 200 16ms","method":"GET","requestID":"82c7b5ba5578517495119dc00793d483","responseTime":16,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"82c7b5ba5578517495119dc00793d483"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI","level":"info","message":"auth send jwt","requestID":"88177a7d643cf659fb2de36f86400c24"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88177a7d643cf659fb2de36f86400c24","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"88177a7d643cf659fb2de36f86400c24"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.226028,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"88177a7d643cf659fb2de36f86400c24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88177a7d643cf659fb2de36f86400c24","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Attempting to run experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Attempting to book experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully booked experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d470e970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4713790-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586059,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d470e970-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d470e970-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.58655,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d4713790-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d4713790-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe040b3be-3a0d-46d0-b100-aa2c17a7fd51","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe040b3be-3a0d-46d0-b100-aa2c17a7fd51","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.950674297Z"}]},"request_id":"08419344-2c17-4d6e-93be-3c0d3faad625","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.1031313} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d470e970-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.991367756Z"}]},"request_id":"9407c96d-158f-4d45-a1ce-0ebf9967f7a1","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.103913} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d4713790-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d470e970-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51? 200 15ms","method":"GET","requestID":"d470e970-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4713790-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad? 200 13ms","method":"GET","requestID":"d4713790-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Setting up experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully locked booking for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"d4761990-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.322456,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d4761990-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4761990-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"de891a91-8ae6-4227-bbee-3b53d59bb604","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.1591988} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5b69fc1-190e-4fc5-8e02-740821d42097","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.1594033} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d4761990-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100' to 'http://localhost/callbacks/experiment'","requestID":"d4761990-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"d4761990-437c-11ef-8659-f5877ab12720"} authentication-1 | {"level":"info","message":"POST /token 201 21ms","method":"POST","requestID":"d47c0d00-437c-11ef-b146-0b9e4d00486a","responseTime":21,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 66ms","method":"POST","requestID":"d4761990-437c-11ef-8659-f5877ab12720","responseTime":66,"status":201,"url":"/devices/e040b3be-3a0d-46d0-b100-aa2c17a7fd51?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Attempting to update booking for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully updated booking for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully set up experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4877eb0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d487ccd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d487f3e0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully running experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.723162,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"client_addr":"127.0.0.1:48674","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d4877eb0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d4877eb0-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:52210","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.274815,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d487ccd0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d487ccd0-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f039cf8-24e4-4996-863a-613097aecd03","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.2527964} authorization-1 | {"client_addr":"127.0.0.1:48674","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.843347,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d487f3e0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d487f3e0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:09.159148376Z"}]},"request_id":"d177a9d8-39a3-4fb1-bc0a-b288d0f637e3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.2572916} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d4877eb0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.991367756Z"}]},"request_id":"1836ec1b-b0cb-4f0c-91fc-60c6ec739b20","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.2599814} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device b6cd90f2-432a-4219-92f1-5ff6b5ddb100","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device b6cd90f2-432a-4219-92f1-5ff6b5ddb100\n at Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:42:15)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"d487f3e0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d487ccd0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling 404 16ms","method":"POST","requestID":"d487f3e0-437c-11ef-8659-f5877ab12720","responseTime":16,"status":404,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"88177a7d643cf659fb2de36f86400c24"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe09ca8a-cfcf-43e1-a5ec-486d6665dd23#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe09ca8a-cfcf-43e1-a5ec-486d6665dd23","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"e9236c87-3d75-4cb8-a8e3-c0cc2c1d55b2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.2653308} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2dcc457-74b1-478b-8786-fc862a3b96b3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.2655282} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d48b2830-437c-11ef-8659-f5877ab12720"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"88177a7d643cf659fb2de36f86400c24","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4877eb0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:09Z"} device-1 | {"level":"info","message":"GET /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100? 200 28ms","method":"GET","requestID":"d4877eb0-437c-11ef-8659-f5877ab12720","responseTime":28,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d487ccd0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad? 200 27ms","method":"GET","requestID":"d487ccd0-437c-11ef-8659-f5877ab12720","responseTime":27,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad?"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"833d3e5d-7e80-4e0a-ac6e-b4f0c9be1bc7","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138889.2728066} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.241656,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d48b2830-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d48b2830-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","user":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"level":"info","message":"POST /experiments? 201 217ms","method":"POST","requestID":"88177a7d643cf659fb2de36f86400c24","responseTime":217,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"16/Jul/2024:14:08:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1107","request_time":"0.225","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"88177a7d643cf659fb2de36f86400c24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d48b2830-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling 200 11ms","method":"POST","requestID":"d48b2830-437c-11ef-8659-f5877ab12720","responseTime":11,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"483939e21b8327e6efc5af0828a5d7b4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"483939e21b8327e6efc5af0828a5d7b4","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/websocket 200 1ms","method":"OPTIONS","requestID":"483939e21b8327e6efc5af0828a5d7b4","responseTime":1,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:08:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"483939e21b8327e6efc5af0828a5d7b4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6Ik15V196Q2ItcFpSRWMxX2hqMXV1SldrcU9haWJpOUdlQ29JLTVrTzJXVXdqTkxOaHZOTzhTZGhoSjlsdENWVHVpSzQxZWx4ekNjQTdScDBWVVFuT2lBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5MX0.K9aHHO8Vs9s8t6PA4k4mfuVW5OsH4kCqraXjWaRWwXg","level":"info","message":"auth send jwt","requestID":"9bef9a396854857069405cf591137d30"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9bef9a396854857069405cf591137d30","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9bef9a396854857069405cf591137d30"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276806,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"9bef9a396854857069405cf591137d30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","payload":{"admin":true,"edgeToken":"MyW_zCb-pZREc1_hj1uuJWkqOaibi9GeCoI-5kO2WUwjNLNhvNO8SdhhJ9ltCVTuiK41elxzCcA7Rp0VUQnOiA","iat":1721138891,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6Ik15V196Q2ItcFpSRWMxX2hqMXV1SldrcU9haWJpOUdlQ29JLTVrTzJXVXdqTkxOaHZOTzhTZGhoSjlsdENWVHVpSzQxZWx4ekNjQTdScDBWVVFuT2lBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5MX0.K9aHHO8Vs9s8t6PA4k4mfuVW5OsH4kCqraXjWaRWwXg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9bef9a396854857069405cf591137d30","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9bef9a396854857069405cf591137d30"} device-1 | {"level":"info","message":"POST /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/websocket 200 22ms","method":"POST","requestID":"9bef9a396854857069405cf591137d30","responseTime":22,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/websocket"} gateway-1 | {"time_local":"16/Jul/2024:14:08:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9bef9a396854857069405cf591137d30"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2163dc5126dd0889070dba1eceec47ea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2163dc5126dd0889070dba1eceec47ea","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":true,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"2163dc5126dd0889070dba1eceec47ea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5MX0.s9SFKncFP5t83n484cRrjuNZa6u1AMVR3d0KLF8Po7E","level":"info","message":"auth send jwt","requestID":"20799a9efa9888de1d7bfdf7f5050757"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"20799a9efa9888de1d7bfdf7f5050757","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20799a9efa9888de1d7bfdf7f5050757"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.340362,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"20799a9efa9888de1d7bfdf7f5050757","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138891,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5MX0.s9SFKncFP5t83n484cRrjuNZa6u1AMVR3d0KLF8Po7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"20799a9efa9888de1d7bfdf7f5050757","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:09.159148376Z"}]},"request_id":"b57a3789-0dde-458a-ab17-dcb1a04e6fd0","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138891.3385909} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"20799a9efa9888de1d7bfdf7f5050757","responseTime":5,"status":200,"url":"/relations/query"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"2163dc5126dd0889070dba1eceec47ea","responseTime":24,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20799a9efa9888de1d7bfdf7f5050757"} gateway-1 | {"time_local":"16/Jul/2024:14:08:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch","requestID":"2163dc5126dd0889070dba1eceec47ea"} gateway-1 | {"time_local":"16/Jul/2024:14:08:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"20799a9efa9888de1d7bfdf7f5050757"} device-1 | {"level":"info","message":"GET /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100? 200 18ms","method":"GET","requestID":"20799a9efa9888de1d7bfdf7f5050757","responseTime":18,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5MX0.s9SFKncFP5t83n484cRrjuNZa6u1AMVR3d0KLF8Po7E","level":"info","message":"auth send jwt","requestID":"c3fc7317145c6e603a53f8ea87123025"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c3fc7317145c6e603a53f8ea87123025","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c3fc7317145c6e603a53f8ea87123025"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.338766,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"c3fc7317145c6e603a53f8ea87123025","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138891,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5MX0.s9SFKncFP5t83n484cRrjuNZa6u1AMVR3d0KLF8Po7E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3fc7317145c6e603a53f8ea87123025","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.991367756Z"}]},"request_id":"19e14c5d-0973-45a3-80e2-83b00e7c28e5","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138891.3648157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c3fc7317145c6e603a53f8ea87123025","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c3fc7317145c6e603a53f8ea87123025"} gateway-1 | {"time_local":"16/Jul/2024:14:08:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3fc7317145c6e603a53f8ea87123025"} device-1 | {"level":"info","message":"GET /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad? 200 17ms","method":"GET","requestID":"c3fc7317145c6e603a53f8ea87123025","responseTime":17,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d7879f50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d787ed70-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.378427,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7879f50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7879f50-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39530","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"client_addr":"127.0.0.1:39530","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.47888,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d787ed70-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d787ed70-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:09.159148376Z"}]},"request_id":"6c1efd1f-cb10-4cf5-a92e-cb4c1d6595f9","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.2915792} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d7879f50-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"},"timestamp":"2024-07-16T14:08:06.991367756Z"}]},"request_id":"057815d0-ec8b-4975-9d53-7b3723f78f89","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.29314} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d787ed70-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d7879f50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100? 200 23ms","method":"GET","requestID":"d7879f50-437c-11ef-8659-f5877ab12720","responseTime":23,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d787ed70-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad? 200 22ms","method":"GET","requestID":"d787ed70-437c-11ef-8659-f5877ab12720","responseTime":22,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d78bbe00-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7adb0814-0501-4b4d-b1af-34eb3c80e4d3","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.3107884} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.989914,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d78bbe00-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d78bbe00-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d78bbe00-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling 200 13ms","method":"POST","requestID":"d78bbe00-437c-11ef-8659-f5877ab12720","responseTime":13,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d78e5610-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d740fec2-ab35-4991-b211-4487f74589fb","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.3293862} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.54931,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d78e5610-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"d78e5610-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d78e5610-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling 200 15ms","method":"POST","requestID":"d78e5610-437c-11ef-8659-f5877ab12720","responseTime":15,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Building connection plan","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"83d2b8e4-d013-496b-831a-fe2e10575f2e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"051ba791-45fe-4b7a-85b2-86c48053a0de"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"58994b59-7f40-495e-aeb7-c0e0388aca2c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"88177a7d643cf659fb2de36f86400c24"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"88177a7d643cf659fb2de36f86400c24"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"d7911530-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.262459,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7911530-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138889,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg4OX0.1FJ9C8cyIQi2F1s6-pwznCbk40XQAoXlAhOe9jVyFwI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7911530-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]}},"raw_response":{},"request_id":"7d486b3b-3dc6-432d-bda0-fed7e3f0e2af","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.3574567} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78bacdb3-a285-411f-bc69-04bc9f610d50","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.3580632} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d7911530-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7911530-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"d7911530-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0'","requestID":"d7911530-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0'","requestID":"d7911530-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"d7911530-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 37ms","method":"POST","requestID":"d7911530-437c-11ef-8659-f5877ab12720","responseTime":37,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"d7911530-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"88177a7d643cf659fb2de36f86400c24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d79c38c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c054caea-5d59-492f-bfab-77afb97759df","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.4169316} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.28702,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d79c38c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d79c38c0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d79c38c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling 200 9ms","method":"POST","requestID":"d79c38c0-437c-11ef-8659-f5877ab12720","responseTime":9,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d79de670-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0925d2e4-62f1-4f19-bd50-f26fbb44db96","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.4274464} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.184607,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d79de670-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d79de670-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d79de670-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling 200 8ms","method":"POST","requestID":"d79de670-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d52e0429-3eb2-460d-b324-23fc8d41f2a0","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7590ade34ddab42bd93fe7a1ae33f62f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7590ade34ddab42bd93fe7a1ae33f62f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0"}}},"level":"info","message":"received a callback","requestID":"7590ade34ddab42bd93fe7a1ae33f62f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"7590ade34ddab42bd93fe7a1ae33f62f","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"7590ade34ddab42bd93fe7a1ae33f62f"} device-1 | {"data":{"peerconnection":"d52e0429-3eb2-460d-b324-23fc8d41f2a0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"d52e0429-3eb2-460d-b324-23fc8d41f2a0","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d52e0429-3eb2-460d-b324-23fc8d41f2a0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4393c9065eb4ab1aa9d732f5ff9fd544","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4393c9065eb4ab1aa9d732f5ff9fd544","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0"}}},"level":"info","message":"received a callback","requestID":"4393c9065eb4ab1aa9d732f5ff9fd544"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"d7a9cd50-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd52e0429-3eb2-460d-b324-23fc8d41f2a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b21e3e0c-27f1-4b18-9582-7dde580f31c8","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.50512} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.457242,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7a9cd50-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7a9cd50-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"d7a9cd50-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"GET /peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0 200 7ms","method":"GET","requestID":"d7a9cd50-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"4393c9065eb4ab1aa9d732f5ff9fd544","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"4393c9065eb4ab1aa9d732f5ff9fd544"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7adc4f0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c93eb749-d54b-4398-9fd9-f87ddcd6fa34","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.5309262} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.996263,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7adc4f0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7adc4f0-437c-11ef-8659-f5877ab12720","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7adc4f0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling 200 7ms","method":"POST","requestID":"d7adc4f0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7af2480-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fe2467d-ecd4-4ad8-b58a-5ec6953b52a4","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.5410442} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.13259,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7af2480-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7af2480-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7af2480-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling 200 8ms","method":"POST","requestID":"d7af2480-437c-11ef-8659-f5877ab12720","responseTime":8,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5NH0.eNE3Nyaxmr1UnebDtsUgKGuy_22umc4a9FW4ckGdGeU","level":"info","message":"auth send jwt","requestID":"0126f961f2b524837ad21182efc14755"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0126f961f2b524837ad21182efc14755","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","requestID":"0126f961f2b524837ad21182efc14755"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.66132,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"0126f961f2b524837ad21182efc14755","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138894,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5NH0.eNE3Nyaxmr1UnebDtsUgKGuy_22umc4a9FW4ckGdGeU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0126f961f2b524837ad21182efc14755","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","requestID":"0126f961f2b524837ad21182efc14755"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23 HTTP/1.1","status": "200","body_bytes_sent":"1180","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0126f961f2b524837ad21182efc14755"} experiment-1 | {"level":"info","message":"GET /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23 200 11ms","method":"GET","requestID":"0126f961f2b524837ad21182efc14755","responseTime":11,"status":200,"url":"/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5NH0.eNE3Nyaxmr1UnebDtsUgKGuy_22umc4a9FW4ckGdGeU","level":"info","message":"auth send jwt","requestID":"2f9b28f284e45cb2918569431a2fa806"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2f9b28f284e45cb2918569431a2fa806","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","requestID":"2f9b28f284e45cb2918569431a2fa806"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.663741,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"2f9b28f284e45cb2918569431a2fa806","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"experiment:http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","object_type":"experiment","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138894,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5NH0.eNE3Nyaxmr1UnebDtsUgKGuy_22umc4a9FW4ckGdGeU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2f9b28f284e45cb2918569431a2fa806","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Attempting to finish experiment","requestID":"2f9b28f284e45cb2918569431a2fa806"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"d7b984c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.498278,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7b984c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"peerconnection:http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138894,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5NH0.eNE3Nyaxmr1UnebDtsUgKGuy_22umc4a9FW4ckGdGeU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7b984c0-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d52e0429-3eb2-460d-b324-23fc8d41f2a0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd52e0429-3eb2-460d-b324-23fc8d41f2a0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd52e0429-3eb2-460d-b324-23fc8d41f2a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"92b45ec1-66f5-4924-b231-f6b92027a468","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.618251} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f670800-9267-4277-80e4-1606a8890483","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.6185007} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d7b984c0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"48b3c34bd438ca8fdd9e7e1cb572f252","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"48b3c34bd438ca8fdd9e7e1cb572f252","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0"}}},"level":"info","message":"received a callback","requestID":"48b3c34bd438ca8fdd9e7e1cb572f252"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8c06f75c05c46e46bc4bafae9798195","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a8c06f75c05c46e46bc4bafae9798195","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"d7b984c0-437c-11ef-8659-f5877ab12720"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0"}}},"level":"info","message":"received a callback","requestID":"a8c06f75c05c46e46bc4bafae9798195"} device-1 | {"level":"info","message":"DELETE /peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0 204 19ms","method":"DELETE","requestID":"d7b984c0-437c-11ef-8659-f5877ab12720","responseTime":19,"status":204,"url":"/peerconnections/d52e0429-3eb2-460d-b324-23fc8d41f2a0"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"d7bc9200-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665696,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7bc9200-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","payload":{"admin":true,"edgeToken":"XAl5SbWgsy_tNeZF1BA4FO33Fd-3uqak4ScE6IhaqcN8P0wR836HkW-R5F2LaR3siN7UzgTxgres3QUnHqXBYQ","iat":1721138894,"sub":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2","subject_alt":"http://localhost/users/b5eb9fef-b0b2-4681-87ee-cc87554165e2"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2I1ZWI5ZmVmLWIwYjItNDY4MS04N2VlLWNjODc1NTQxNjVlMiIsImVkZ2VUb2tlbiI6IlhBbDVTYldnc3lfdE5lWkYxQkE0Rk8zM0ZkLTN1cWFrNFNjRTZJaGFxY044UDB3UjgzNkhrVy1SNUYyTGFSM3NpTjdVemdUeGdyZXMzUVVuSHFYQllRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTEzODg5NH0.eNE3Nyaxmr1UnebDtsUgKGuy_22umc4a9FW4ckGdGeU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d7bc9200-437c-11ef-8659-f5877ab12720","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad'"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"533c493d-85ff-4432-a767-f7661d5e7cdf","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.6368248} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6947469-0d8a-4521-a415-9b35d1d44556","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.6371777} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d7bc9200-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"d7bc9200-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"DELETE /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100 204 23ms","method":"DELETE","requestID":"d7bc9200-437c-11ef-8659-f5877ab12720","responseTime":23,"status":204,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"},"level":"info","message":"Successfully finished experiment","requestID":"2f9b28f284e45cb2918569431a2fa806"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7c348c0-437c-11ef-8659-f5877ab12720"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb6cd90f2-432a-4219-92f1-5ff6b5ddb100","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49d482ed-b466-4f79-8491-805578c4caa2","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.672266} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.601182,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7c348c0-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d7c348c0-437c-11ef-8659-f5877ab12720","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database","method":"POST","stack":"MissingEntityError: The requested Device Overview does not exist in the database\n at DeviceOverviewRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-common/lib/esm/database/abstractRepository.js:63:19)\n at async DeviceRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-device/app/database/repositories/device.js:155:32)\n at async Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:22:25)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"d7c348c0-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling 404 7ms","method":"POST","requestID":"d7c348c0-437c-11ef-8659-f5877ab12720","responseTime":7,"status":404,"url":"/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"2f9b28f284e45cb2918569431a2fa806"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"d7c4cf60-437c-11ef-8659-f5877ab12720"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe09ca8a-cfcf-43e1-a5ec-486d6665dd23': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbe09ca8a-cfcf-43e1-a5ec-486d6665dd23","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Fb5eb9fef-b0b2-4681-87ee-cc87554165e2"}]},"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","writes":null},"raw_response":{},"request_id":"6a8a52be-179c-4496-ad71-2745bb32eb5a","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.679058} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K"},"raw_response":{"authorization_model":{"id":"01J2XXTWZ4QAKG50FCKDWGCF5A","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72259987-c164-4b9e-b105-759c444ddb20","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.679415} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"2f9b28f284e45cb2918569431a2fa806","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:34474","raw_request":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","contextual_tuples":null,"store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63160259-6e6a-4fe6-ae93-edeb042c78ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9feaa73-8410-4bdd-b847-e92db9fdee2d","store_id":"01J2XXTWXW3V5BDCC93YTHPR9K","subsystem":"openfga","timestamp":1721138894.6841648} authorization-1 | {"client_addr":"127.0.0.1:51740","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.931087,"resp_status":200,"subsystem":"opa","time":"2024-07-16T14:08:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","openfga":{"authorization_model_id":"01J2XXTWZ4QAKG50FCKDWGCF5A","store":"01J2XXTWXW3V5BDCC93YTHPR9K"},"requestID":"d7c4cf60-437c-11ef-8659-f5877ab12720","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d7c4cf60-437c-11ef-8659-f5877ab12720","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"d7c4cf60-437c-11ef-8659-f5877ab12720"} device-1 | {"level":"info","message":"POST /devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling 200 10ms","method":"POST","requestID":"d7c4cf60-437c-11ef-8659-f5877ab12720","responseTime":10,"status":200,"url":"/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23","requestID":"2f9b28f284e45cb2918569431a2fa806"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f9b28f284e45cb2918569431a2fa806"} experiment-1 | {"level":"info","message":"DELETE /experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23 204 161ms","method":"DELETE","requestID":"2f9b28f284e45cb2918569431a2fa806","responseTime":161,"status":204,"url":"/experiments/be09ca8a-cfcf-43e1-a5ec-486d6665dd23"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"48b3c34bd438ca8fdd9e7e1cb572f252","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"48b3c34bd438ca8fdd9e7e1cb572f252"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"a8c06f75c05c46e46bc4bafae9798195","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8c06f75c05c46e46bc4bafae9798195"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2406","request_time":"3.459","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3b3630ddd6ef154f75d5409d512bb2ea"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"5.753","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bfad789cf88f01a828a5d3c6006c69fa"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/63160259-6e6a-4fe6-ae93-edeb042c78ad' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"38209502a403c2716d83511d08425f4f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"38209502a403c2716d83511d08425f4f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":false,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/b6cd90f2-432a-4219-92f1-5ff6b5ddb100"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"38209502a403c2716d83511d08425f4f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"38209502a403c2716d83511d08425f4f","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"16/Jul/2024:14:08:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "410","body_bytes_sent":"5","request_time":"0.004","http_referrer":"","http_user_agent":"node-fetch","requestID":"38209502a403c2716d83511d08425f4f"} federation-1 exited with code 0 device-1 exited with code 0 authentication-1 exited with code 0 experiment-1 exited with code 0 authorization-1 exited with code 0 gateway-1 exited with code 0